@charset "UTF-8";
/* shop_search用CSS
========================================*/
input[type=checkbox] {
    display: none;
}
.checkbox {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 0 37px;
    position: relative;
    width: auto;
}
.simulate{
    padding: 0 0 0 37px;
}
.checkbox::before {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
    content: '';
    display: block;
    height: 16px;
    left: 15px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.checkbox::after {
    border-right: 6px solid #ed6d00;
    border-bottom: 3px solid #ed6d00;
    content: '';
    display: block;
    height: 20px;
    left: 18px;
    margin-top: -16px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg) translate3d(0,2px,0) scale3d(.7,.7,1);
    transition: transform .2s ease-in-out, opacity .2s ease-in-out;
    width: 9px;
}

input[type=checkbox]:checked + .checkbox::before {
    border-color: #666;
}
input[type=checkbox]:checked + .checkbox::after {
    opacity: 1;
    transform: rotate(45deg) scale3d(1,1,1);
}

#mainArea {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
}

#mainArea.shopSearch > article h1 {
	color:#ed6d00;
	font-weight:bold;
	line-height:120%;
}

#mainArea.shopSearch > article #gmapArea {
}

#mainArea.shopSearch .searchBox {
	background:#f5f5f5;
}
#mainArea.shopSearch .searchBox dt {
	font-weight:bold;
	line-height:130%;
}
#mainArea.shopSearch .searchBox dd {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	justify-content:center;
}
#mainArea.shopSearch .searchBox dd input[type="text"] {
	border:0;
}
#mainArea.shopSearch .searchBox dd .searchBtn {
	background:#333;
	color:#fff;
	font-weight:bold;
}

#mainArea.shopSearch .caseWrap .caseList li a {
	display:block;
	position:relative;
}

.sortName{
    display: flex;
    width: 1120px;
    margin: auto;
    justify-content: end;
    position: relative;
    z-index: 10;
}

.sortName p {
    margin: 0 1%;
    font-size: 16px;
}
.sortName a {
    font-size: 16px;
}

.sortName a.active {
    font-weight: bold;
}

.sortName a.inactive {
    color: #aaa; /* 非アクティブ時のカラー */
}

.inactiveMark {
    display: none;
}
.otherFilterMeisterImg{
    width: 100%;
}
.otherFilterCs{
    width: 40%;
}
.filterQuestionIcon {
    display: flex;
}
.filterQuestionIcon > a {
    margin-left: 1vw;
}
/*
#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:before {
	content:"";
	position:absolute;
	z-index:10;
}
#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:after {
	background:rgba(255, 255, 255, 0.8);
	content:"";
	position:absolute;
	top:0;
	right:0;
}
@media screen and (max-width: 767px) {
	#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:before {
		background:url(../common/img/icon_blank.png) no-repeat;
		background-size:2.75vw 2.75vw;
		top:0.875vw;
		right:0.875vw;
		height:2.75vw;
		width:2.75vw;
	}
	#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:after {
		height:4.5vw;
		width:4.5vw;
	}
}
@media print, screen and (min-width: 768px) {
	#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:before {
		background:url(../common/img/icon_blank.png) no-repeat;
		background-size:15px 15px;
		top:5px;
		right:5px;
		height:15px;
		width:15px;
	}
	#mainArea.shopSearch .caseWrap .caseList li a[target="_blank"]:after {
		height:25px;
		width:25px;
	}
}
*/

#mainArea.shopSearch .caseWrap .caseList li img {
}

#mainArea.shopSearch .caseWrap .caseList._main li .date {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	justify-content:flex-start;
}

/* SPonly */
@media screen and (max-width: 767px) {
	#mainArea.shopSearch > article {
		border-top:0.875vw solid #ed6d00;
		/* padding:8.533333vw 0 0; */
	}
	#mainArea.shopSearch > article h1 {
        text-align: center;
        font-size: 24px;
        line-height: 32px;
        letter-spacing: 0px;
        color: #666666;
        margin-bottom: 8.533333vw;
        font-weight: bold;
	}
    #mainArea.shopSearch > article #gmapArea {
        width:91.466666vw;
        margin: auto;
        margin-bottom:16.53333vw;
        height:62.4vw;
    }
    #mainArea.shopSearch .count {
        font-size: 5.8666666vw;
        line-height: 7.4666666vw;
        letter-spacing: -0.176vw;
        color: #666666;
        font-weight: bold;
    }
    #mainArea.shopSearch .count span {
        font-size: 6.4vw;
        line-height: 7.4666666vw;
        letter-spacing: -0.1919999vw;
        color: #EF6D00;
        font-weight: bold;
    }
    #mainArea.shopSearch .searchContent {
        background: #F7F6F4 0% 0% no-repeat padding-box;
        padding-bottom: 15vw;
    }
    #mainArea.shopSearch .searchContent .line {
        display: none;
    }
    #mainArea.shopSearch .searchContent.inmodal {
        background: #FFF 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .searchTab {
        background: #FFF;
    }
    #mainArea.shopSearch .searchTab:after {
        content: '';
        border-bottom: 2px solid #D9D4CB;
        position: absolute;
        width: 100vw;
        display: inline-block;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    #mainArea.shopSearch .searchTabBlock {
        height: 21.06666vw;
        display: flex;
        align-items: stretch;
        flex-direction: row;
        justify-content: center;
    }
    #mainArea.shopSearch .searchTabContent {
        background: #FFF;
        width: 44.8vw;
        height: 18.6666666vw;
        margin-left: 0.8vw;
        margin-right: 0.8vw;
        border: 0.533333vw solid #D9D4CB;
        border-bottom: 0;
        border-radius: 1.6vw 1.6vw 0px 0px;
        text-align: center;
        font-size: 3.73333vw;
        line-height: 5.333333vw;
        letter-spacing: -0.11vw;
        color: #666666;
        margin-top: 2.4vw;
        cursor: pointer;
    }
    .prefArrow{
        margin: 0;
    }
    .prefArrowBottom{
        margin: 0;
        margin-right: -11px;
    }
    .arrowWrap{
        margin-left: auto;
        display: flex;
    }
    #mainArea.shopSearch .searchTabContent > p {
        padding-top: 2.5vw;
    }
    #mainArea.shopSearch .searchTabContent > .tabPadding {
        padding-top: 4vw;
    }
    #mainArea.shopSearch .searchTabContent.active {
        background: #707070;
        color: #FFFFFF;
        height: 21.066666vw;
        margin-top: 0px;
    }
    #mainArea.shopSearch .searchTabContent.active > p {
        padding-top: 3vw;
    }
    #mainArea.shopSearch .searchTabContent.active > .tabPadding {
        padding-top: 5vw;
    }
    #mainArea.shopSearch .searchReform {
        display: none;
    }
    #mainArea.shopSearch .searchReform.active {
        display: block;
        padding-top: 8.799999vw;
        background: #F7F6F4 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .searchReformBtn {
        display: block;
        width: 65.88579vw;
        margin: auto;
        text-align: center;
        margin-top: 8.799999vw;
    }
    #mainArea.shopSearch .searchReformBtn .submitBtn {
        width: 58.39824vw;
        height: 11.513909vw;
        /* line-height: 11.513909vw; */
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 0.21961vw 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 2.439239vw;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchReformPlace {
        background: #fff;
        width: 95%;
        display: flex;
        border: 0.53333vw solid #D4CEC4;
        border-bottom: none;
        margin: auto;
        flex-direction: column;
    }
    #mainArea.shopSearch .searchReformPlace.top {
        border-bottom: 0;
    }
    #mainArea.shopSearch .searchReformPlace.bottom {
        border-top: 0;
        border-radius: 0 0 2.13333vw 2.13333vw;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace {
        height: 10.666666vw;
        border-bottom: 0.4vw solid #D4CEC4;
        font-size: 3.73333vw;
        line-height: 5.333333vw;
        padding-top: 5vw;
        width: 100%;
    }
    #mainArea.shopSearch .searchReformPlace .csFilter {
        border-radius: 0 0 2.13333vw 2.13333vw;
        padding-top: 2vw;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace.bottom {
        width: 50%;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace.under.spunder {
        border-bottom: 0;
    }
    #mainArea.shopSearch .searchReformPlaceCat {
        width: 95%;
        background: #EBE9E5;
        font-size: 16px;
        line-height: 30px;
        color: #666666;
        margin: auto;
        border-left: 0.53333vw solid #D4CEC4;
        border-right: 0.53333vw solid #D4CEC4;
    }
    .top {
        border-radius: 6px 6px 0 0;
        border-top: 0.53333vw solid #D4CEC4;
    }
    .filterQuestionIcon {
        align-items: center;
    }
    #mainArea.shopSearch .searchReformPlaceCat span {
        padding-left: 4vw;
    }
    #mainArea.shopSearch .searchKeywordArea {
        display: none;
    }
    #mainArea.shopSearch .searchKeywordArea.active {
        display: block;
        background: #F7F6F4 0% 0% no-repeat padding-box;
        padding-top: 8vw
    }
    #mainArea.shopSearch .searchKeyword {
        display: flex;
        width: 100vw;
        margin: auto;
        justify-content: center;
    }
    #mainArea.shopSearch .searchKeyword input {
        box-shadow: inset 0px 0.8vw 1.6vw #00000029;
        border: 0.2666666vw solid #D9D4CB;
        border-radius: 1.6vw 0px 0px 6px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        width: 75.4666vw;
        height: 14.39999vw;
        font-size: 16px;
        line-height: 28px;
        padding-left: 4.8vw;
    }
    #mainArea.shopSearch .searchKeyword input::placeholder {
        padding-left: 4.8vw;
        font-size: 4.2666666vw;
        line-height: 7.466666vw;
        letter-spacing: 0px;
        color: #9B9B9B;
    }
    #mainArea.shopSearch .searchKeyword .searchIcon {
        width: 60px;
        height: 14.9999vw;
        background: #EF6D00 0% 0% no-repeat padding-box;
        border-radius: 0px 6px 6px 0px;
    }
    #mainArea.shopSearch .searchKeyword .searchIcon button {
        width: 100%;
        height: 100%;
        color: #FFF;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchFavoriteKeywordArea {
        display: none;
    }
	#mainArea.shopSearch .searchBox {
		border-radius:2.5vw;
		margin-bottom:7.5vw;
		padding:5vw 5vw 6.25vw;
	}
	#mainArea.shopSearch .searchBox dt {
		font-size:3.75vw;
		margin-bottom:3.75vw;
		text-align:center;
	}
	#mainArea.shopSearch .searchBox dt .fas {
		font-size:110%;
		margin-right:2.5vw;
	}
	#mainArea.shopSearch .searchBox dd input[type="text"] {
		border-radius:1.25vw 0 0 1.25vw;
		font-size:3.25vw;
		line-height:150%;
		padding:1.5vw 1.875vw;
		width:45vw;
	}
	#mainArea.shopSearch .searchBox dd .searchBtn {
		border-radius:0 1.25vw 1.25vw 0;
		font-size:3.25vw;
		line-height:150%;
		padding:1.5vw 3.75vw;
	}
	#mainArea.shopSearch .searchBox dd .checkBox {
		font-size:3.25vw;
		margin-top:2.5vw;
	}
	#mainArea.shopSearch .searchBox dd .checkBox input[type="checkbox"] {
		margin-right:1.25vw;
		vertical-align:-0.5vw;
	}
	#mainArea.shopSearch .caseWrap {
        padding-top: 6.4vw;
		padding-bottom: 12.8vw;
        background: #F7F6F4;
	}
	#mainArea.shopSearch .caseWrap .caseList li {
		margin-bottom:5vw;
	}
	#mainArea.shopSearch .caseWrap .caseList li figure {
		/* margin-bottom:5.333333vw; */
	}
	#mainArea.shopSearch .caseWrap .caseList li dl {
        padding-left: 5.333333vw;
        padding-right: 5.333333vw;
        font-size: 3.73333333vw;
        line-height: 5.33333333vw;
        word-wrap: break-word;
    }
	#mainArea.shopSearch .caseWrap .caseList li dt {
        font-size: 4.8vw;
        line-height: 6.9333333vw;
        letter-spacing: 0px;
        color: #EF6D00;
		font-weight:bold;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        margin-bottom: 4.266666vw;
	}
	#mainArea.shopSearch .caseWrap .caseList li .date {
        padding-left: 5.333333vw;
        padding-right: 5.333333vw;
        font-size: 3.73333333vw;
        line-height: 5.33333333vw;
        letter-spacing: 0px;
        color: #666666;
        margin-bottom: 1.6vw;
	}
	#mainArea.shopSearch .caseWrap .caseList li .date p {
        margin-bottom: 2.666666vw;
    }
	#mainArea.shopSearch .caseWrap .caseList li .text {
        font-size: 4.266666vw;
        line-height: 7.4666666vw;
        color: #333333;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        margin-bottom: 4.266666vw;
    }
	#mainArea.shopSearch .caseWrap .caseList li .continue {
        text-decoration: underline;
        font-size: 3.73333333vw;
        line-height: 5.3333333vw;
        letter-spacing: 0px;
        color: #707070;
        text-align: right;
        margin-bottom: 6.4vw;
	}
	#mainArea.shopSearch .caseWrap .caseList._main li figure {
		overflow:hidden;
		height:68.75vw;
	}
	#mainArea.shopSearch .caseWrap .caseList._main li figure img {
		height:68.75vw;
		width:100%;
		object-fit:cover;
		font-family:"object-fit:cover;";
		/*IE対策*/
	}
	#mainArea.shopSearch .caseWrap .caseList._main li .date p {
		margin-right:3.75vw;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub {
		display:flex;
		flex-wrap:wrap;
        justify-content: center;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li {
		width: 84.8vw;
        background: #FFF;
        position: relative;
        margin-bottom: 40px;
        padding-top: 5.333333334vw;
        padding-bottom: 75px;
        padding-left: 4.8vw;
        padding-right: 4.5333334vw;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li figure {
		overflow:hidden;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li figure img {
		width:100%;
		object-fit:cover;
		font-family:"object-fit:cover;";
		/*IE対策*/
	}
    #mainArea.shopSearch .searchArea {
        display: none;
    }
    #mainArea.shopSearch .searchArea.active {
        display: block;
        overflow: scroll;
    }
    #mainArea.shopSearch .prefContent {
        display: block;
        padding-top: 8.799999vw;
        background: #F7F6F4 0% 0% no-repeat padding-box;
        width: 100%;
        margin: auto;
        justify-content: flex-start;
    }
    #mainArea.shopSearch .prefContent.inmodal {
        display: block;
        padding-top: 3vw;
        width: 100%;
        margin: auto;
        justify-content: flex-start;
        background: #FFF 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .prefContent.inmodal.first {
        padding-top: 55px;
    }
    #mainArea.shopSearch .prefContent.inmodal.last {
        margin-bottom: 100px;
    }
    #mainArea.shopSearch .prefContent .area {
        width: 34.66666vw;
        font-size: 18px;
        line-height: 32px;
        color: #666666;
        padding-left: 4.266666vw;
    }
    #mainArea.shopSearch .prefContent .prefArea {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding-left: 5.266666vw;
        padding-right: 5.266666vw;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref {
        display:block;
        position: relative;
        margin-bottom: 1.066666vw;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref input{
        opacity: 0;
        position: absolute;
        left: 0;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref label{
        border-radius: 2.133333vw;
        border: 0.2666667vw solid #D9D4CB;
        background: #FFF;
        display: block;
        cursor: pointer;
        transition: .5s;
        font-size: 4.8vw;
        line-height: 8.53333vw;
        width: 39.5vw;
        height: 12.8vw;
        text-align: center;
        line-height: 12.8vw;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref input:checked + label{
        background: #EF6D22;
        color: #FFF;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref input:focus + label{
        box-shadow: 0 0 4px #af975e;
    }
    #mainArea.shopSearch .searchAreaBtn {
        display: block;
        width: 100%;
        margin: auto;
        text-align: center;
        background: #F7F6F4 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .searchAreaBtn .submitBtn {
        width: 59.73333vw;
        height: 12.8vw;
        line-height:12.8vw;
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 0.8vw 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 1.6vw;
        margin-top: 10.666667vw;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchCondPanel {
        display: block;
        width: 80.8vw;
        margin: auto;
        padding-top: 5.33333vw;
        padding-bottom: 5.33333vw;
        padding-left: 5.33333vw;
        padding-right: 5.33333vw;
        background: #FFF;
        border-radius: 1.6vw;
        margin-bottom: 7.466666vw;
    }
    #mainArea.shopSearch .searchCondPanel p {
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #EF6D00;
        font-weight: bold;
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock {
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock img {
        padding-bottom: 6px;
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock p {
        font-size: 16px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #333333;
        font-weight: bold;
    }
    #mainArea.shopSearch .cityPanel {
        display: block;
        width: 84.53333vw;
        margin: auto;
        padding-top: 2.133333vw;
        padding-bottom: 2.133333vw;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        background: #FFF;
        border-radius: 1.6vw 1.6vw 0 0;
        border: 0.533333vw solid #D4CEC4;
        position: relative;
    }
    #mainArea.shopSearch .cityPanel .cityPanelTitle p {
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #666666;
        font-weight: 500;
    }
    #mainArea.shopSearch .cityPanel .cityPanelToggle {
        background: url('../common/img/accordion_open.png') no-repeat;
        position: absolute;
        width: 10.666666vw;
        height: 10.666666vw;
        right: 0vw;
        top: 4.3333333vw;
        cursor: pointer;
    }
    #mainArea.shopSearch .cityPanel .cityPanelToggle.open {
        background: url('../common/img/accordion_close.png') no-repeat;
        top: 6vw;
    }
    #mainArea.shopSearch .cityPanelContentArea {
        display: none;
    }
    #mainArea.shopSearch .cityPanelContentArea.open {
        display: block;
    }
    #mainArea.shopSearch .cityPanelContent {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 84.53333vw;
        margin: auto;
        padding-top: 2.133333vw;
        padding-bottom: 2.133333vw;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        background: #FFF;
        border-radius: 0 0 1.6vw 1.6vw;
        border: 0.533333vw solid #D4CEC4;
        border-top: 0;
        margin-right: 3vw;
        margin-bottom: 3vw;
    }
    #mainArea.shopSearch .cityPanelContent > a {
        display: block;
        padding-top: 2.6666666vw;
        padding-bottom: 2.6666666vw;
        padding-left: 4.8vw;
        padding-right: 4.8vw;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 0.266666vw solid #D9D4CB;
        border-radius: 1.6vw;
        text-align: center;
        font-size: 4.266666vw;
        line-height: 7.466666vw;
        letter-spacing: 0px;
        color: #333333;
        margin-right: 5px;
        margin-bottom: 5px;
    }
    #mainArea.shopSearch .cityPanelContent > a.active {
        background: #EF6D22;
        color: #FFF;
    }#mainArea.shopSearch .otherCityPanelContent {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 84.53333vw;
        margin: auto;
        padding-top: 0;
        padding-bottom: 2.133333vw;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        background: #FFF;
        border-radius: 0 0 1.6vw 1.6vw;
        border: 0.533333vw solid #D4CEC4;
        border-top: 0;
        margin-right: auto;
        margin-bottom: 3vw;
    }
    #mainArea.shopSearch .otherCityPanelContent > .mapBtn,.prefMapBtn {
        display: block;
        padding-top: 1vw;
        padding-bottom: 1vw;
        padding-left: 4.8vw;
        padding-right: 4.8vw;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 0.266666vw solid #D9D4CB;
        border-radius: 1.6vw;
        text-align: center;
        font-size: 4.266666vw;
        line-height: 7.466666vw;
        letter-spacing: 0px;
        color: #333333;
        margin-right: auto;
        margin-bottom: 0px;
    }
    #mainArea.shopSearch #hide_content, #mainArea.shopSearch #hide_content_pref {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        max-height: 21vw;
        width: 84.53333vw;
        background: #FFF;
        overflow: hidden;
        transition: max-height 0.5s ease;
    }
    #mainArea.shopSearch #hide_content > a, #mainArea.shopSearch #hide_content_pref > a {
        display: block;
        padding-top: 1vw;
        padding-bottom: 1vw;
        padding-left: 4.8vw;
        padding-right: 4.8vw;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 0.266666vw solid #D9D4CB;
        border-radius: 1.6vw;
        text-align: center;
        font: normal 400 normal 16px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        line-height: 7.466666vw;
        letter-spacing: 0.1vw;
        color: #333333;
        margin-right: 1vw;
        margin-bottom: 1vw;
        transition: max-height 0.5s ease;
    }

    #mainArea.shopSearch .caseWrap .caseList .shopHeadContent {
        display: flex;
        justify-content: flex-start;
        margin-bottom: 8px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent {
        width: 56.266666vw;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopName {
        font-size: 3.7333333vw;
        line-height: 5.3333333vw;
        letter-spacing: 0px;
        color: #333333;
        font-weight: bold;
        margin-bottom: 0.8vw;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel {
        font: normal normal bold 5.8666666vw/7.4666666vw Roboto;
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
        color: #69A73F;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel .telnum {
        font: normal normal bold 5.8666666vw/7.4666666vw Roboto;
        color: #69A73F;
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel img {
        padding-bottom: 0.8vw;
        margin-right: 1.6vw;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopAddress {
        font-size: 2.933333vw;
        line-height: 6.4vw;
        color: #333333;
        margin-top: 2.8vw;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopAddress img {
        width: 3.2vw;
        padding-bottom: 1.333333vw;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopImageContent {
        width: 26.133333vw;
		margin-bottom:5.333333vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent {
        display: flex;
        font-size: 2.933333vw;
        line-height: 6.4vw;
        color: #666666;
        justify-content: space-between;
        line-height: normal;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent .left {
        letter-spacing: 0.29333vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent .right {
        color: #333333;
        width: 36.5333334vw;
        word-wrap: break-word;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent {
        display: flex;
        margin-bottom: 2vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsTitle {
        width: 20vw;
        font-size: 2.133333vw;
        line-height: 2.6666667vw;
        color: #666666;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsStar {
        font: normal normal bold 4.8vw/4.5333334vw Roboto;
        color: #333333;
        padding-top: 0.2666667vw;
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsStar span.shopQuestionnaireResultCount {
        font: normal normal normal 2.4vw/3.4666667vw Roboto;
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin-bottom: 1.3333334vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li {
        width: 26.666667vw;
        margin: 0;
        padding: 0;
        margin-right: 1.3333334vw;
        margin-bottom: 1.86666667vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li img {
        width: 26.666667vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li.sponly {
        width: 6.933333vw;
        margin: 0;
        padding: 0;
        margin-right: 1.3333334vw;
        margin-bottom: 1.86666667vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li.sponly img {
        width: 6.933333vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li p {
        display: none;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopContest {
        text-align: center;
        margin-bottom: 5vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopContest img {
        height: 50px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks {
        position: absolute;
        display: flex;
        width: 82.666667vw;
        justify-content: space-between;
        bottom: 5.333334vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a {
        display: block;
        width: 40vw;
        height: 11.7333334vw;
        background: #EF6D00;
        border-radius: 1.6vw;
        box-shadow: 0px 0.533333vw 0px #00000033;
        text-align: center;
        font-size: 4.266666vw;
        line-height: 7.466666vw;
        letter-spacing: 0px;
        color: #FFFFFF;
        line-height: 11.7333334vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a.contact {
        background: #69A73F 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a img {
        margin-left: 4vw;
        padding-bottom: 1.333334vw;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a.contact img {
        margin-left: 2.666667vw;
        padding-bottom: 0.4vw;
    }
    #mainArea.shopSearch .annotationBlock {
        width: 91.46666vw;
        margin: auto;
        text-align: right;
        margin-top: 10.66666vw;
        margin-bottom: 13.333332vw;
        border-top: 1px solid #D4CEC4;
        padding-top: 8vw;
    }
    #mainArea.shopSearch .annotationBlock img {
        margin-right: 2px;
    }
    #mainArea.shopSearch .annotationBlock a {
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #696865;
        margin-left: 10px;
    }
    .modalArea {
        display: none;
        position: fixed;
        height: 85%;
        inset: 0;
        margin: auto;
        padding: 0;
        z-index: 30000;
        margin-top: 2vw;
        background: #F7F6F4;
        border-radius: 10px;
        overflow: scroll;
        margin-left: 16px;
        margin-right: 16px;
    }
    #modal-bg {
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        position: fixed;
        top: 0;
        left: 0;
        z-index: 29999;
    }
    .modalArea .searchContent {
        position: relative;
    }
    .modalHeader {
        position: fixed;
        z-index: 300001;
        width: 85%;
    }
    .modalArea .modalClose {
        position: absolute;
        top: 20px;
        right: 0;
        cursor: pointer;
    }
    .modalTitle {
        position: absolute;
        margin: auto;
        font-size: 22px;
        line-height: 32px;
        color: #666666;
        background: #FFF 0% 0% no-repeat padding-box;
        border-radius: 10px;
        width: 105%;
    }
    .modalTitle p {
        padding-left: 4vw;
        padding-top: 4vw;
        padding-bottom: 4vw;
    }
    .searchModalBtn {
        display: block;
        width: 100%;;
        margin: auto;
        text-align: center;
        margin-top: 2vw;
        margin-bottom: 2vw;
    }
    .prefMapBtn{
        width: 260px;
        margin: 0;
        margin-left: 15px;
        display: flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
        gap: 15px;
        align-self: flex-start;
        height: 30px;
        padding: 21px 18px;
    }
    .hidePrefCities{
        max-height: 0px;
        height: 0px;
    }
    .cityPanelTitlePref{
        width: 84.53333vw;
    }
    #arrowIcon {
        transition: transform 0.5s ease;
    }
    .img100{
        margin-top: 20px;
    }
    .searchModalBtnArea {
        display: none;
        position: fixed;
        left: 0;
        bottom: 0;
        padding: 2vw 0;
        width: 100%;
        background: #F5F5F5;
        z-index: 30000;
    }
    .searchModalBtnArea.active {
        display: initial;
    }
    .searchModalBtn .submitBtn {
        width: 150px;
        height: 60px;
        line-height:60px;
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        cursor: pointer;
        text-align: left;
        padding-left: 30px;
    }
    .searchModalBtn .submitBtn img {
        padding-bottom: 2px;
        margin-left: 10px;
    }
    #mainArea.shopSearch .cityPadding{
        padding-top: 23px;
    }
    .searchModalBtn .resetBtn {
        width: 150px;
        height: 60px;
        line-height:60px;
        background: #696865 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        cursor: pointer;
    }
    .modalButton {
        width: 100%;
        height: 11.73333vw;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 6px;
        top: 20px;
        right: 20px;
        cursor: pointer;
        font-size: 3.8vw;
        color: #333333;
    }
    .modalButton img {
        padding-left: 3vw;
        padding-bottom: 0.7vw;
    }
    .searchResetBtn {
        width: 50%;
        height: 11.73333vw;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 6px;
        cursor: pointer;
        font-size: 3.8vw;
        display: block;
        margin: auto;
        line-height: 11.73333vw;
        text-align: center;
        box-shadow: 0px 3px 0px #00000033;
        letter-spacing: 0px;
        color: #EF6D00;
        margin-top: 5vw;
    }
	#mainArea.shopSearch .caseWrap .noResult {
        text-align: center;
    }
	#mainArea.shopSearch .caseWrap .noResult img {
        width: 100%;
    }
    .city_title{
        text-align: center;
		font-weight: bold;
		font-size: 28px;
        line-height: 40px;
		letter-spacing: 0px;
		color: #666666;
		border-top: 1px #F7F6F4 solid;
		padding: 30px 0;
    }
    .prefMapBtn{
        display: flex;
        width: 83.53333vw;
        box-shadow: 0px 2px 0px #00000033;
        background: #FFFFFF;
        border: 2px solid #D9D4CB;
		font-size: 16px;
		line-height: 28px;
        color: #ffffff;
        background-color: #EF6D00;
        border-radius: 6px;
        margin: auto;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-left: 16px;
        margin-bottom: 22px;
        font-weight: 600;
        font-size: 18px;
    }

    .prefArrow{
        margin-left: auto;
    }
    #mainArea > article > div.caseWrap > a > picture, .prefMapBtn > picture{
        display:inline;
    }
    #mainArea > article > div.caseWrap > a > picture > img, .prefMapBtn > picture > img{
        margin-top: -1vw;
    }
    .festaBannerWrap{
        width: 93vw;
        margin: 20px auto 0px auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
    .festaBannerWrap > picture:only-child{
        margin-left: auto;
    }
    .festaBannerWrap > picture > img{
        width: 45vw;
    }
    .shopEventBanner{
        display: flex;
        position: absolute;
        width: 94.1333334vw;
        justify-content: space-between;
        top: -28px;
        left: 0px;
        align-items: flex-end;
        height: 29px;
    }
    .shopEventBanner > picture:only-child{
        margin-left: auto;
    }
    .overBox{
        display: block;
        background-color: #EBE9E5;
        width: auto;
        padding-top: 4.2666666vw;
        padding-bottom: 4.2666666vw;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        position: relative;
    }
    .overBox > div > div > div.shopcs{
        display: inline-flex;
        margin-top: 10px;
        text-align: left;
        font: normal normal normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
        justify-content: center;
    }
    .overBox > div > div > div.shopcs > p{
        width: 70px;
        font: bold normal normal 12px/13px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        line-height: 8px;
        white-space: pre-wrap;
        word-wrap: break-word;
    }
    .overBox > div > div > div.shopcs > div.shopcsStar{
        margin-right: 20px;
    }
    div.overBox > div > div > div.shopcs > div.shopcsScore{
        text-align: left;
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
    }
    div.overBox > div > div > div.shopcs > div.shopcsScore > span{
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
		font-size: 12px;
        line-height: 20px;
		letter-spacing: 0px;
	    color: #333333;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox  > div > div > ul > li > img{
        margin-top: 10px;
        height: 19px;
        opacity: 1;
        width:100px;
        margin-right: 3.8px;
    }
    .shopSubName{
        text-align: left;
        font: normal 700 normal 14px / 20px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    .shopMainName{
        text-align: left;
        font: normal 700 normal 20px / 1.2 "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li {
        background:#FFFFFF;
        border: 2px solid #D9D4CB;
        box-shadow: 0px 2px 0px #00000033;
        border-radius: 6px;
        width: 93vw;
        margin: auto;
    }
    .shopBlock{
        display: none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopcs > div.shopcsStar > img{
        width: 18px;
        height: 17px;
        padding-bottom: 7px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > ul > li{
        height: 50px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink > div.faAngleBox > i{
        display:none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink{
        display:flex;
        justify-content: space-between;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink > div.faAngleBox > div > img{
        background-color: white;
        border-radius: 4px;
        height:50px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > figure > img{
        margin: auto;
        width: 83.2vw;
        height: 185px;
        object-fit: contain;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > figure{
        text-align:center;
        position: relative;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > figure > div{
        display: none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div{
        width: 92%;
        margin: auto;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div > p{
        text-align: left;
        font: normal normal normal 16px/24px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div > div > div{
        display: flex;
        text-align: left;
        font: normal normal normal 12px/15px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
        justify-content: space-between;
        line-height: normal;
        margin-top:      10px
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div > div > div > p.right{
        text-align: left;
        font: normal normal normal 12px/15px Hiragino Sans;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
        width: 75%;
        word-wrap: break-word;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div > div > div.sp-contest{
        display: flex;
        justify-content: center;
        margin-top: 15px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div > a.quote{
        display: block;
        width: 80%;
        height: 54px;
        background: #EF6D00;
        border-radius: 6px;
        box-shadow: 0px 2px 0px #00000033;
        text-align: center;
        /* UI Properties */
        font: normal normal normal 18px/32px Hiragino Sans;
        letter-spacing: 0px;
        color: #FFFFFF;
        line-height: 54px;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div > a.contact{
        display: block;
        width: 18%;
        height: 54px;
        background: #69A73F 0% 0% no-repeat padding-box;
        border-radius: 6px;
        box-shadow: 0px 2px 0px #00000033;
        text-align: center;
        /* UI Properties */
        font: normal normal normal 18px/32px Hiragino Sans;
        letter-spacing: 0px;
        color: #FFFFFF;
        line-height: 54px;
        opacity: 1;
        margin-left: 3%
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div{
        display: flex;
        width: 92%;
        margin: auto;
        margin-top: 15px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div.tel-box{
        display: flex;
        justify-content: center;
        align-items: center;
        height: 48px;
        width: 92%;
        margin: auto;
        margin-top: 8px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        box-shadow: 0px 2px 0px #00000029;
        border: 1px solid #69A73F;
        border-radius: 6px;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div.tel-box > a{
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
        cursor:default;
        text-align: left;
        font: normal normal bold 29px/28px Roboto;
        letter-spacing: 0px;
        color: #69A73F;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopFooter > dd > div.tel-box > a > img{
        position: relative;
        top: -2px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div > p > img{
        height: 22px;
        width: 18px;
    }
    .box{
        position:relative;
    }
    .link_a{
        position: absolute;
        top: 0;
        left: 0;
        height:100%;
        width: 100%;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div.imgBox{
        margin-top: 10px;
        margin-bottom: 10px;
        text-align: center;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.shopBlock-sp > div.shopOutline > div.imgBox{
        margin-top: 10px;
        margin-bottom: 10px;
        text-align: center;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > div.imgBox > img{
        height: 41px;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.shopBlock-sp > div.shopOutline > div.imgBox > img{
        height: 41px;
    }
    .pc{
        display: none;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div > div.shopcs > div.shopcsStar > img{
        position: relative;
        height:4vw;
        bottom:1.5vw;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div > div.shopcs > div.shopcsStar > img{
        position: relative;
        height:4vw;
        bottom:1.5vw;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div.flexbox{
        display: flex;
        justify-content: space-between;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div.faAngleBox{
        display: flex;
        align-items: center;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div.faAngleBox > i{
        font-size: 2em;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.flexbox{
        display: flex;
        justify-content: space-between;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div.faAngleBox{
        display: flex;
        align-items: center;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div.faAngleBox > i{
        font-size: 2em;
    }
    #mainArea > article > h1.prefH1{
        margin-bottom: 32px;
    }
    #mainArea > article > .prefTopContent{
        width: 68vw;
        margin: auto;
        background-color: #FEF2E8;
        border: #ED6E01 1px solid;
        margin-bottom: 40px;
        padding: 25px 20px;
        max-height: 100px;
        overflow: hidden;
    }
    .prefTopContent.expanded + .expand-button {
        display: none;
    }
    #mainArea .mainSec h2{
        margin-bottom: 8.5vw !important;
    }
    .prefTopContentText{
        line-height: 1.5;
        color: #666666;
        font-size: 14px;
    }
    .close{
        
    }
    .expand-button{
        width: 100%;
        margin: 0px auto 25px auto;
    }
    .prefContentTitle{
        font-size: 16px;
        font-weight: 600;
        line-height: 28px;
    }
    .prefText{
        margin-top: 16px;
        line-height: 28px;
    }
    .prefTopContentText a {
        display: block;
        margin-top: 18px;
        margin-bottom: 23px;
        color: #EF6D00;
        font-weight: 600;
    }
    .prefTopContentImg{
        width: 157px;
        margin: auto;
    }
    .prefAllow{
        position: relative;
        display: inline-block;
        padding: 10px;
    }
    .prefAllow::before{
        content: '';
        width: 8px;
        height: 8px;
        border-radius: 1;
        border-top: solid 2px #ED621F;
        border-right: solid 2px #ED621F;
        position: absolute;
        left: 10px;
        top: 9px;
        transform: rotate(45deg);
        z-index: 10;
    }
    #mainArea .mainSec.customer{
        margin-bottom: 0px;
        padding-top: 70px;
        padding-bottom: 0px;
    }
    #mainArea .mainSec.rehome{
        padding-top: 40px;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }
    #mainArea .mainSec{
        background-color: #F7F6F4;
    }
    .customerWrap{
        display: flex;
        position: relative;
        width: 92.8vw !important;
        flex-wrap: wrap;
        margin: auto;
        z-index: 2;
    }
    #mainArea .mainSec.customer{
        position: relative;
    }
    .customerItem{
        max-height: 191px;
        position: relative;
        background-color: #FDF4EB;
        border: 1px solid #EF6D00;
        border-radius: 6px;
        width: 100%;
        min-height: 120px;
        margin-bottom: 30px;
    }
    .customerItem::after {
        content: '';
        position: absolute;
        bottom: -22px;
        right: 0px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 30px 30px 0 0;
        border-color: #FDF4EB transparent transparent transparent;
        transform: scale(-1, 1);
    }
    .customerItem::before {
        content: '';
        position: absolute;
        bottom: -24.8px;
        right: -1px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 34px 34px 0 0;
        border-color: #EF6D01 transparent transparent transparent;
        transform: scale(-1, 1);
        z-index: -1;
    }
    .customerItem:nth-child(odd)::after{
        bottom: -22px;
        left: 0px;
        transform: none;
    }
    .customerItem:nth-child(odd)::before{
        bottom: -24.8px;
        left: -1px;
        transform: none;
    }
    .customerWrap li:nth-child(2n){
        margin-right: 0px;
    }
    .customerInner{
        display: flex;
        flex-direction: column;
        height: 100%;
        position: relative;
        padding-top: 24px;
        padding-bottom: 24px;
    }
    .customerText{
        margin: 0px 24px 0px 24px;
        font-size: 16px;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-height: 26px;
        text-overflow: ellipsis;
    }
    .customerLink{
        width: auto;
        margin-right: 24px;
        text-align: right;
        padding-bottom: 24px;
        color: #EF6D00;
        text-decoration: underline;
        margin-top: auto;
        font-size: 14px;
        margin-bottom: 24px;
    }
    .rehomeBanner{
        width: 92.8vw;
        margin: auto;
        padding-bottom: 0px;
    }
    .rehomeBannerItem {
        width: 100%;
        margin: auto;
    }
    .rehomeBanner h2{
        margin-bottom: 48px;
        font-size: 28px;
        color: #666666;
        font-weight: 600;
        text-align: center;
    }
    .rehomeBanner a picture{
        width: 100%;
        margin: auto;
    }
    .rehomeBanner h3{
        font-size: 16px;
        color: #666666;
        padding-bottom: 52px;
        width: 100%;
        margin: auto;
        margin-top: 6px;
    }
    .rehomeBannerItem a picture img {
        width: 100%;
    }
    #mainArea .mainSec.hojokin{
        margin-bottom: 0px;
    }
    #mainArea .mainSec.faq h2{
        margin-top: 0px;
        padding-top: 48px;
    }
    .hojokinBanner{
        width: 92.8vw;
        display: flex;
        flex-direction: column;
        margin: auto;
        gap: 34px;
    }
    .hojokinItem h3{
        color: #666666;
        font-weight: 600;
        font-size: 16px;
        margin-top: 9px;
    }
    .hojokinItem{
        width: 100%;
        margin: auto;
    }
    .hojokinItem a picture img {
        width: 100%;
    }
    #mainArea .mainSec.faq{
        margin-bottom: 0px;
        padding-bottom: 60px;
    }
    #mainArea .mainSec .faqWrap{
        width: 92.8vw;
        margin: auto;
        padding-top: 0px;
    }
    .faq .question{
        color: #EF6D00;
        font-weight: 600;
        font-size: 16px;
        background-color: #FEECE3;
        padding: 24px 0 23px 25px;
    }
    .faq .answer{
        display: flex;
        padding: 26px 25px 24px 25px;
        background-color: #FFFFFF;
        color: #666666;
    }
    .answer p{
        font-size: 16px;
        line-height: 26px;
    }
    .faqItem{
        padding-bottom: 20px;
    }
    .question span{
        font-size: 20px;
        margin-right: 13px;
    }
    .answer span{
        font-size: 20px;
        color: #EF6D00;
        margin-right: 13px;
    }
    .prefPhoto{
        width: auto !important;
    }
    .searchReformPlaceCat span {
        font-weight: 600;
    }
    .filterMain {
        font-weight: bold;
    }
    .clamp-text {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .cityPanelFilter .cityPanelTitle > p{
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #666666;
        font: normal 600 normal 18px/30px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
    .redomoreBtn{
        margin: auto;
    }
    #mainArea.shopSearch .cityPanelFilter {
        display: block;
        width: 84.53333vw;
        margin: auto;
        padding-top: 7px;
        padding-bottom: 7px;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        background: #FFF;
        border-radius: 1.6vw 1.6vw 0 0;
        border: 0.533333vw solid #D4CEC4 !important;
        border-bottom: none;
        position: relative;
    }
    .sortName{
        display: flex;
        width: 90vw;
        margin: auto;
        justify-content: end;
        position: relative;
        z-index: 1001;
        font-size: 14px;
    }
    .sortName p {
        margin: 0 1%;
        font-size: 14px;
    }
    .sortName a {
        font-size: 14px;
    }
    .sortName p {
        margin: 0 1%;
    }
    
    .sortName a.active {
        font-weight: bold;
    }
    
    .sortName a.inactive {
        color: #aaa; /* 非アクティブ時のカラー */
    }
    .firstMessageWrap {
        position: relative;
    }
    .firstMessage {
        border: 1px solid #EBE9E5;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        background-color: #fff;
        padding: 10px;
        top: -68px;
        left: 100px;
        position: absolute;
        font-size: 1.125rem;
        white-space: nowrap;
    }
    .firstMessage::after {
        content: "";
        position: absolute;
        bottom: -10px;
        right: 20px;
        width: 0;
        height: 0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 10px solid #fff;
        border-bottom: none;
    }
    .serviceSubmit{
        font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "メイリオ", Meiryo !important;
        margin-left: 15px;
    }
    .serviceReset{
        font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "メイリオ", Meiryo !important;
    }
    .brsp{
        display: block;
    }
    .serviceFilterModal{
        padding: 0;
        background-color: #FFFFFF !important;
    }
    .serviceFilterInmodal{
        padding: 0 !important;
        background-color: #FFFFFF !important;
    }
    .cityPanelFilterWrap{
        width: 100%;
    }
    .cityOnlyPanelFilter{
        width: 100%;
        margin: auto;
    }
    .serviceFilter{
        display: block;
        margin: 22px auto 0;
        padding-top: 2.133333vw;
        padding-bottom: 2.133333vw;
        padding-left: 4.2666666vw;
        padding-right: 4.2666666vw;
        background: #FFF;
        border-radius: 1.6vw;
        border: 0.533333vw solid #D4CEC4;
        position: relative;
    }
    .serviceFilter .serviceTitle {
        width: 84.53333vw;
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #666666;
        font: normal 600 normal 18px/30px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        color: #666666;
        display: flex;
        align-items: center;
        text-align: left;
    }
    .arrowWrap{
        margin-left: auto;
        display: flex !important;
    }
    #otherCityPanelPadding {
        transition: padding-top 0.1s ease;
    }
    .plusIcon{
        margin-left: auto;
    }
    .sortIcon{
        margin-right: 20px;
    }
    .filterMeisterImg{
        width: 80%;
    }
    .otherFilterMeisterImg{
        width: 40%;
        margin-left: 1%;
    }
    .otherFilterCs {
        width: 30%;
    }
    .serviceFilterNames{
        width: 94%;
        margin: auto;
    }
    .serviceFilterTitle{
        font-size: 1.125rem;
        margin: 20px 0;
        font-weight: bold;
    }
    .serviceName{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .serviceName label{
        font-size: 1rem;
        display: flex;
        width: 50%;
        margin-bottom: 25px;
        align-items: center;
    }
    input[type="checkbox"].serviceFilterName {
        display: inline-block !important;
        accent-color: #EF6D00;
        height: 20px !important;
        min-width: 20px;
        margin: 0 5px;
    }
    .simulateFlex label{
        width: 100%;
        margin-top: 0.5%;
    }
    .meisterFlex{
        justify-content: flex-start;
    }
    .divideBlockPref{
        position: relative;
        top: 29px;
        height: 1px;
        width: 93.5%;
        margin: auto;
        border-top: 1px solid #D4CEC4;
    }
    .divideBlock{
        width: 93.5%;
        margin: auto;
        text-align: right;
        margin-top: 40px;
        margin-bottom: 20px;
        border-top: 1px solid #D4CEC4;
    }
}

/* PConly */
@media print, screen and (min-width: 768px) {
	#mainArea.shopSearch > article {
		margin-left:auto;
		margin-right:auto;
		min-width:1366px;
	}
	#mainArea.shopSearch > article h1 {
        text-align: center;
        font-size: 28px;
        line-height: 40px;
        letter-spacing: 0px;
        color: #666666;
        font-weight: bold;
        margin-top: 30px;
        margin-bottom: 70px;
	}
    #mainArea.shopSearch > article #gmapArea {
        width:900px;
        margin: auto;
        margin-bottom:50px;
        height:278px;
    }
    #mainArea.shopSearch .count {
        font-size: 22px;
        line-height: 28px;
        letter-spacing: -0.66px;
        color: #666666;
    }
    #mainArea.shopSearch .count span {
        font-size: 24px;
        line-height: 28px;
        letter-spacing: -0.72px;
        color: #EF6D00;
    }
    #mainArea.shopSearch .prefAndCity{
        color: #EF6D00;
    }
	#mainArea.shopSearch .searchBox {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		align-items:center;
		justify-content:center;
		border-radius:20px;
		margin:0 auto 50px;
		padding:40px 80px;
		width:780px;
	}
	#mainArea.shopSearch .searchBox dt {
		font-size:142.85714%;
		margin-right:30px;
	}
	#mainArea.shopSearch .searchBox dt .fas {
		font-size:120%;
		margin-right:15px;
	}
	#mainArea.shopSearch .searchBox dd {
		width:375px;
	}
	#mainArea.shopSearch .searchBox dd input[type="text"] {
		border-radius:10px 0 0 10px;
		font-size:107.14286%;
		line-height:150%;
		padding:10px 12px;
		width:280px;
	}
	#mainArea.shopSearch .searchBox dd .searchBtn {
		border-radius:0 10px 10px 0;
		cursor:pointer;
		font-size:107.14286%;
		line-height:150%;
		padding:10px 0;
		width:70px;
	}
	#mainArea.shopSearch .searchBox dd .searchBtn:hover {
		opacity:0.8;
	}
	#mainArea.shopSearch .searchBox dd .checkBox {
		margin:10px 0 -20px;
		width:375px;
	}
	#mainArea.shopSearch .searchBox dd .checkBox input[type="checkbox"] {
		margin-right:5px;
	}
    #mainArea.shopSearch .searchContent {
        padding-bottom: 90px;
        background: #F7F6F4 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .searchContent .line {
        width: 920px;
        position: relative;
        border-top: 2px solid #D9D4CB;
        margin: auto;
    }
    #mainArea.shopSearch .searchTab {
        padding-top: 50px;
        padding-bottom: 40px;
    }
    #mainArea.shopSearch .searchTabBlock {
        height: 64px;
        display: flex;
        align-items: stretch;
        flex-direction: row;
        justify-content: center;
    }
    #mainArea.shopSearch .searchTabContent {
        background: #FFF;
        width: 290px;
        height: 55px;
        margin-left: 5px;
        margin-right: 5px;
        border: 2px solid #D9D4CB;
        border-bottom: 0;
        border-radius: 6px 6px 0px 0px;
        text-align: center;
        font-size: 16px;
        line-height: 20px;
        letter-spacing: -0.48px;
        color: #666666;
        line-height:55px;
        margin-top: 9px;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchTabContent.active {
        background: #707070;
        color: #FFFFFF;
        height: 64px;
        line-height:64px;
        margin-top: 0px;
    }
    #mainArea.shopSearch .searchReform {
        display: none;
    }
    #mainArea.shopSearch .searchReform.active {
        display: block;
    }
    #mainArea.shopSearch .searchReformBtn {
        display: block;
        width: 900px;
        margin: auto;
        text-align: center;
    }
    #mainArea.shopSearch .searchReformBtn .submitBtn {
        width: 224px;
        height: 48px;
        line-height:48px;
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        margin-top: 40px;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchReformPlace {
        background: #fff;
        width: 900px;
        display: flex;
        border: 2px solid #D4CEC4;
        flex-direction: row;
        flex-wrap: wrap;
        margin: auto;
        justify-content: flex-start;
        border-top: none;
        border-bottom: none;
    }
    #mainArea.shopSearch .searchReformPlaceCat {
        width: 900px;
        background: #EBE9E5;
        font-size: 16px;
        line-height: 30px;
        color: #666666;
        margin: auto;
        border: 2px solid #D4CEC4;
        border-bottom: none;
        border-top: none;
    }
    #mainArea.shopSearch .top {
        border-radius: 6px 6px 0 0;
        border-top: 2px solid #D4CEC4;
    }
    #mainArea.shopSearch .searchReformPlaceCat span {
        padding-left: 15px;
    }
    #mainArea.shopSearch .searchReformPlace.top {
        border-radius: 0px;
        border-bottom: 0;
    }
    #mainArea.shopSearch .searchReformPlace.bottom {
        border-radius: 0px 0px 6px 6px;
        border-top: 0;
        border-bottom: 2px solid #D4CEC4;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace {
        width: 225px;
        height: 55px;
        line-height: 55px;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace.bottom {
        width: 225px;
    }
    #mainArea.shopSearch .searchReformPlace .checkPlace.bottom.under {
        border-bottom: 0;
    }
    #mainArea.shopSearch .searchKeywordArea {
        display: none;
    }
    #mainArea.shopSearch .searchKeywordArea.active {
        display: block;
    }
    #mainArea.shopSearch .searchKeyword {
        display: flex;
        width: 900px;
        margin: auto;
        justify-content: center;
    }
    #mainArea.shopSearch .searchKeyword input {
        box-shadow: inset 0px 3px 6px #00000029;
        border: 1px solid #D9D4CB;
        border-radius: 6px 0px 0px 6px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        width: 480px;
        height: 54px;
        font-size: 16px;
        line-height: 28px;
        padding-left: 18px;
    }
    #mainArea.shopSearch .searchKeyword input::placeholder {
        padding-left: 18px;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #9B9B9B;
    }
    #mainArea.shopSearch .searchKeyword .searchIcon {
        width: 60px;
        height: 56px;
        background: #EF6D00 0% 0% no-repeat padding-box;
        border-radius: 0px 6px 6px 0px;
    }
    #mainArea.shopSearch .searchKeyword .searchIcon button {
        width: 100%;
        height: 100%;
        color: #FFF;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchFavoriteKeywordArea {
        width: 900px;
        text-align: center;
        margin: auto;
        margin-top: 40px;
    }
    #mainArea.shopSearch .searchFavoriteKeywordArea p {
        font-size: 18px;
        line-height: 28px;
        letter-spacing: -0.54px;
        color: #707070;
    }
    #mainArea.shopSearch .searchFavoriteKeywordArea p:before {
        content: url(../img/n_21.png);
        position: relative;
        bottom: -7px;
    }
    #mainArea.shopSearch .searchFavoriteKeywords {
        display: flex;
        width: 900px;
        height: 70px;
        background: #FFF;
        justify-content: space-around;
        align-content: center;
        flex-wrap: wrap;
        border-radius: 8px;
    }
    #mainArea.shopSearch .searchFavoriteKeyword {
        background: #E6E0D3 0% 0% no-repeat padding-box;
        border-radius: 3px;
        font-size: 12px;
        line-height: 30px;
        color: #EF6D00;
        padding-left: 12px;
        padding-right: 12px
    }
	#mainArea.shopSearch .caseWrap {
        background: #F7F6F4;
        padding-top: 0px;
		padding-bottom:60px;
	}
	#mainArea.shopSearch .caseWrap .noResult {
        text-align: center;
        margin: auto;
    }
	#mainArea.shopSearch .caseWrap .noResult img {
        width: 900px;
    }
	#mainArea.shopSearch .caseWrap .caseList {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
        width: 1120px;
        margin: auto;
	}
	#mainArea.shopSearch .caseWrap .caseList li a:hover img {
		opacity:0.8;
	}
	#mainArea.shopSearch .caseWrap .caseList li figure {
		/* margin-bottom:20px; */
	}
	#mainArea.shopSearch .caseWrap .caseList li .date {
        padding-left: 20px;
        padding-right: 20px;
        font-size: 14px;
        line-height: 20px;
        color: #666666;
    }
    #mainArea.shopSearch .caseWrap .caseList li .date p {
        margin-bottom: 10px;
    }
	#mainArea.shopSearch .caseWrap .caseList li dl {
        margin-top: 6px;
        margin-bottom: 24px;
        padding-left: 20px;
        padding-right: 20px;
        word-wrap: break-word;
    }
	#mainArea.shopSearch .caseWrap .caseList li dt {
        max-height: 50px;
		font-weight:bold;
        font-size: 18px;
        line-height: 26px;
        letter-spacing: 0px;
        color: #EF6D00;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
	}
	#mainArea.shopSearch .caseWrap .caseList li .text {
        max-height: 84px;
        margin-top: 16px;
        margin-bottom: 16px;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #333333;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }
	#mainArea.shopSearch .caseWrap .caseList li .continue {
        text-align: right;
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #707070;
	}
	#mainArea.shopSearch .caseWrap .caseList._main {
		margin-bottom:40px;
	}
	#mainArea.shopSearch .caseWrap .caseList._main li {
		width:548px;
	}
	#mainArea.shopSearch .caseWrap .caseList._main li figure {
		overflow:hidden;
		height:397px;
	}
	#mainArea.shopSearch .caseWrap .caseList._main li figure img {
		height:397px;
		width:100%;
		object-fit:cover;
		font-family:"object-fit:cover;";
		/*IE対策*/
	}
	#mainArea.shopSearch .caseWrap .caseList._main li .date p {
		margin-right:20px;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub {
		justify-content:flex-start;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li {
        position: relative;
        margin-right:20px;
		width:310px;
        background: #FFF;
        padding-top: 20px;
        padding-bottom: 75px;
        padding-left: 25px;
        padding-right: 25px;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li:nth-of-type(3n) {
		margin-right:0;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li figure {
		overflow:hidden;
	}
	#mainArea.shopSearch .caseWrap .caseList._sub li figure img {
		width:100%;
		object-fit:cover;
		font-family:"object-fit:cover;";
		/*IE対策*/
	}
    #mainArea.shopSearch .searchArea {
        display: none;
    }
    #mainArea.shopSearch .searchArea.active {
        display: block;
    }
    #mainArea.shopSearch .prefContent {
        display: flex;
        width: 920px;
        margin: auto;
        justify-content: flex-start;
    }
    #mainArea.shopSearch .prefContent .area {
        width: 120px;
        padding-top: 5px;
        height: 38px;
        font-size: 18px;
        line-height: 32px;
        color: #666666;
    }
    #mainArea.shopSearch .prefContent .prefArea {
        width: 720px;
        margin-left: 65px;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref{
        display:block;
        position: relative;
        margin-bottom: 15px;
        margin-right: 15px;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref input{
        opacity: 0;
        position: absolute;
        left: 0;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref label{
        border-radius: 8px;
        border: 1px solid #D9D4CB;
        background: #FFF;
        display: inline-block;
        cursor: pointer;
        transition: .5s;
        width: 103px;
        height: 37px;
        text-align: center;
        line-height: 37px;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref label:hover,
    #mainArea.shopSearch .prefContent .prefArea .pref input:checked + label{
        background: #EF6D22;
        color: #FFF;
    }
    #mainArea.shopSearch .prefContent .prefArea .pref input:focus + label{
        box-shadow: 0 0 4px #af975e;
    }
    #mainArea.shopSearch .searchAreaBtn {
        display: block;
        width: 900px;
        margin: auto;
        text-align: center;
    }
    #mainArea.shopSearch .searchAreaBtn .submitBtn {
        width: 224px;
        height: 48px;
        line-height:48px;
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        margin-top: 40px;
        cursor: pointer;
    }
    #mainArea.shopSearch .searchCondPanel {
        display: block;
        width: 850px;
        margin: auto;
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 27px;
        padding-right: 19px;
        background: #FFF;
        border-radius: 8px;
        border: 2px solid #D4CEC4;
        margin-bottom: 30px;
        position: relative;
    }
    #mainArea.shopSearch .searchCondPanel p {
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #EF6D00;
        font-weight: 500;
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock {
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock img {
        padding-bottom: 6px;
    }
    #mainArea.shopSearch .searchCondPanel .searchCondBlock p {
        width: 660px;
        font-size: 16px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #333333;
        font-weight: 500;
    }
    #mainArea.shopSearch .cityPanel {
        display: block;
        width: 850px;
        margin: auto;
        padding-top: 23px;
        padding-bottom: 23px;
        padding-left: 27px;
        padding-right: 19px;
        background: #FFF;
        border-radius: 8px 8px 0 0;
        border: 2px solid #D4CEC4;
        position: relative;
    }
    #mainArea.shopSearch .cityPanel .cityPanelTitle p {
        font-size: 18px;
        line-height: 30px;
        letter-spacing: 0px;
        color: #666666;
        font-weight: 500;
    }
    #mainArea.shopSearch .cityPanel .cityPanelToggle {
        background: url('../common/img/accordion_open.png') no-repeat;
        position: absolute;
        width: 40px;
        height: 40px;
        right: 20px;
        top: 30px;
        cursor: pointer;
    }
    #mainArea.shopSearch .cityPanel .cityPanelToggle.open {
        background: url('../common/img/accordion_close.png') no-repeat;
        top: 40px;
    }
    #mainArea.shopSearch .cityPanelContentArea {
        display: none;
    }
    #mainArea.shopSearch .cityPanelContentArea.open {
        display: block;
    }
    #mainArea.shopSearch .cityPanelContent {
        display: flex;
        width: 850px;
        margin: auto;
        padding-top: 23px;
        padding-bottom: 23px;
        padding-left: 27px;
        padding-right: 19px;
        background: #FFF;
        border-radius: 0 0 8px 8px;
        border: 2px solid #D4CEC4;
        border-top: 0;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 15px;
    }
    #mainArea.shopSearch .cityPanelContent > a {
        display: block;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 18px;
        padding-right: 18px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 8px;
        text-align: center;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #333333;
    }
    #mainArea.shopSearch .cityPanelContent > a.active {
        background: #EF6D22;
        color: #FFF;
    }#mainArea.shopSearch .otherCityPanelContent {
        display: flex;
        width: 575px;
        margin: auto;
        padding-top: 0px;
        padding-bottom: 23px;
        padding-left: 18px;
        padding-right: 28px;
        background: #FFF;
        border-radius: 0 0 8px 8px;
        border: 2px solid #D4CEC4;
        border-top: 0;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 15px;
    }#mainArea.shop .SearchotherCityPanelContentPref{
        max-height: 0px;
    }
    #mainArea.shopSearch .otherCityPanelContent > a {
        display: block;
        padding-top: 3px;
        padding-bottom: 3px;
        padding-left: 18px;
        padding-right: 18px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 8px;
        text-align: center;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #333333;
    }
    #otherCityPanelPadding {
        transition: padding-top 0.1s ease;
        transition: padding-bottom 0.1s ease;
    }
    #arrowIcon {
        transition: transform 0.5s ease;
    }
    #mainArea.shopSearch .otherCityPanelContent > a.active {
        background: #EF6D22;
        color: #FFF;
    }
    .hidePrefCities{
        max-height: 0px;
        height: 0px;
    }
    #mainArea.shopSearch #hide_content, #mainArea.shopSearch #hide_content_pref{
        display: flex;
        max-height: 90px;
        width: 850px;
        margin: auto;
        background: #FFF;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 15px;
        overflow: hidden;
        transition : max-height 0.5s ease;
    }
    #mainArea.shopSearch #hide_content.open, #mainArea.shopSearch #hide_content_pref.open{
        display: flex;
        width: 850px;
        margin: auto;
        background: #FFF;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 15px;
        overflow: hidden;
        transition: max-height 0.5s ease;
    }
    #mainArea.shopSearch #hide_content > a, #mainArea.shopSearch #hide_content_pref > a {
        display: block;
        padding-top: 3px;
        padding-bottom: 3px;
        padding-left: 18px;
        padding-right: 18px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 8px;
        text-align: center;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #333333;
    }

    #mainArea.shopSearch #hide_content > a:hover,  #mainArea.shopSearch #hide_content_pref > a:hover{
        background: #EF6D22;
        color: #FFF;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopHeadContent {
        display: flex;
        justify-content: flex-start;
        margin-bottom: 8px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent {
        width: 211px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopName {
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #333333;
        font-weight: bold;
        margin-bottom: 5px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel {
        font: normal normal bold 22px/28px Roboto;
        color: #69A73F;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel .telnum {
        color: #69A73F;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopTel img {
        padding-bottom: 3px;
        margin-right: 6px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopAddress {
        font-size: 11px;
        line-height: 24px;
        color: #333333;
        margin-top: 10.5px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopAddress img {
        width: 12px;
        padding-bottom: 5px;
    }
	#mainArea.shopSearch .caseWrap .caseList .shopImageContent {
        width: 98px;
        margin-bottom: 20px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent {
        display: flex;
        font-size: 11px;
        line-height: 28px;
        color: #666666;
        justify-content: space-between;
        line-height: normal;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent .left {
        letter-spacing: 1.1px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopInfoContent .shopSubInfoContent .right {
        color: #333333;
        width: 137px;
        word-wrap: break-word;
        letter-spacing: 0px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent {
        display: flex;
        margin-bottom: 10px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsTitle {
        width: 75px;
        font-size: 8px;
        line-height: 10px;
        letter-spacing: 0px;
        color: #666666;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsStar {
        font: normal normal bold 18px/17px Roboto;
        color: #333333;
        padding-top: 1px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopCsContent .shopCsStar span.shopQuestionnaireResultCount {
        font: normal normal normal 9px/13px Roboto;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        margin-bottom: 5px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li {
        width: 100px;
        margin: 0;
        padding: 0;
        margin-right: 5px;
        margin-bottom: 7px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li:hover {
        position: relative;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li:hover:after {
        content: "";
        display: block;
        margin: 0 auto;
        position: absolute;
        background: url(../img/shop_icon_balloon.png) no-repeat;
        top: -10px;
        left: calc(50% - 8px);
        height: 10px;
        width: 17px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li img {
        width: 100px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li p {
        display: none;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopIconContent ul li:hover p {
        background: #707070 0% 0% no-repeat padding-box;
        opacity: 0.9;
        display: block;
        line-height: 140%;
        position: absolute;
        white-space: nowrap;
        border-radius: 3px;
        padding: 8px 12px;
        bottom: calc(40px + 10px);
        bottom: 31px;
        font-size: 11px;
        line-height: 18px;
        letter-spacing: 0px;
        color: #FFFFFF;
        z-index: 100;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopContest {
        text-align: center;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopContest img {
        /* width: 38px; */
        height: 50px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks {
        position: absolute;
        display: flex;
        width: 310px;
        justify-content: space-between;
        bottom: 20px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a {
        display: block;
        width: 150px;
        height: 44px;
        background: #EF6D00;
        border-radius: 6px;
        box-shadow: 0px 2px 0px #00000033;
        text-align: center;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        line-height: 44px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a.contact {
        background: #69A73F 0% 0% no-repeat padding-box;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a img {
        margin-left: 15px;
        padding-bottom: 5px;
    }
    #mainArea.shopSearch .caseWrap .caseList .shopLinks a.contact img {
        margin-left: 10px;
        padding-bottom: 1.5px;
    }
    #mainArea.shopSearch .annotationBlock {
        width: 1120px;
        margin: auto;
        text-align: right;
        margin-top: 75px;
        margin-bottom: 45px;
        border-top: 1px solid #D4CEC4;
        padding-top: 30px;
    }
    #mainArea.shopSearch .annotationBlock img {
        margin-right: 2px;
    }
    #mainArea.shopSearch .annotationBlock a {
        text-decoration: underline;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0px;
        color: #696865;
        margin-left: 20px;
    }
    .modalArea {
        display: none;
        position: fixed;
        width: 1000px;
        height: 600px;
        inset: 0;
        margin: auto;
        padding: 0;
        z-index: 30000;
        background: #F7F6F4;
        border-radius: 10px;
        overflow: scroll;
    }
    #modal-bg {
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        position: fixed;
        top: 0;
        left: 0;
        z-index: 29999;
    }
    .modalArea .searchContent {
        position: relative;
    }
    .modalArea .modalClose {
        position: absolute;
        top: 20px;
        right: 30px;
        cursor: pointer;
    }
    .modalTitle {
        width: 920px;
        margin: auto;
        font-size: 22px;
        line-height: 32px;
        color: #666666;
        padding-top: 20px;
        padding-bottom: 25px;
    }
    .searchModalBtn {
        display: block;
        width: 100%;
        margin: auto;
        text-align: center;
    }
    .searchModalBtn .submitBtn {
        width: 150px;
        height: 60px;
        line-height:60px;
        background: #EF6D00 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        margin-top: 40px;
        cursor: pointer;
        text-align: left;
        padding-left: 30px;
    }
    .searchModalBtn .submitBtn img {
        padding-bottom: 2px;
        margin-left: 10px;
    }
    .searchModalBtn .resetBtn {
        width: 150px;
        height: 60px;
        line-height:60px;
        background: #696865 0% 0% no-repeat padding-box;
        box-shadow: 0px 3px 0px #00000033;
        font-size: 16px;
        line-height: 28px;
        letter-spacing: 0px;
        color: #FFFFFF;
        border-radius: 6px;
        margin-top: 40px;
        cursor: pointer;
    }
    .modalButton {
        width: 180px;
        height: 44px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 1px solid #D9D4CB;
        border-radius: 6px;
        position: absolute;
        top: 20px;
        right: 20px;
        cursor: pointer;
    }
    #otherCityPanelPadding {
        transition: padding-top 0.1s ease;
    }
    .modalButton img {
        padding-bottom: 2.3px;
        padding-left: 10px;
    }
    .searchResetBtn {
        display: block;
        width: 180px;
        height: 44px;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        border: 2px solid #D9D4CB;
        border-radius: 6px;
        cursor: pointer;
        text-align: center;
        margin: auto;
        font-size: 16px;
        line-height: 28px;
        line-height: 44px;
        margin-top: 20px;
        box-shadow: 0px 3px 0px #00000033;
        letter-spacing: 0px;
        color: #EF6D00;
    }
    #mainArea > article > div.caseWrap > .mapBtn, .prefMapBtn{
        display: block;
        width: 320px;
        box-shadow: 0px 2px 0px #00000033;
        background: #FFFFFF;
        border: 2px solid #D9D4CB;
		font-size: 16px;
		line-height: 28px;
        color: #ffffff;
        background-color: #EF6D00;
        border-radius: 6px;
        margin: auto;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-left: 16px;
        margin-bottom: 22px;
        font: bold;
    }
    #mainArea > article > div.caseWrap > .mapBtn > picture,.prefMapBtn > picture{
        display:inline;
    }
    #mainArea > article > div.caseWrap > .mapBtn > picture > img,.prefMapBtn > picture > img{
        margin-bottom: 3px;
        width: 30px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li{
        border-radius:0px;
		margin-bottom:20px;
        margin-left:auto;
        margin-right:auto;
        width:1120px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline {
		width:1120px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox {
		width:450px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox h3 {
		font-size:171.42857%;
		margin-bottom:10px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopAddress {
		font-size:107.14286%;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel {
		font-size:257.14286%;
		margin-top:12px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel a {
		pointer-events:none;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel .fas {
		margin-right:10px;
	}
        #mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnListSp {
                display:none;
        }
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList {
		width:330px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList ul {
		margin-left:10px;
		width:160px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList ul li {
		margin-bottom:10px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList ul li:last-of-type {
		margin-bottom:0;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList ul li a:hover {
		display:block;
		opacity:0.8;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconMeister {
		width:200px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconMeister li {
		margin-bottom:8px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconGeneral {
		width:640px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconGeneral li {
		margin-right:8px;
        margin-bottom: 5px;
	}
	#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconGeneral li:last-of-type {
		margin-right:0;
	}
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopScore {
        color:#ed6d00;
        font-weight:bold;
        line-height:130%;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopQuestionnaireResultCount {
        font-size: 130%;
    }
    .overBox{
        background-color: #EBE9E5;
        padding: 30px;
    }
    .festaBannerWrap{
        width: 1120px;
        margin: 20px auto 0px auto;
        display: flex;
        justify-content: flex-end;
        gap: 10px;
        align-items: flex-end;
    }
    .shopEventBanner{
        display: flex;
        position: absolute;
        width: 360px;
        justify-content: space-between;
        top: -28px;
        left: 0px;
        gap: 24px;
        align-items: flex-end;
        height: 29px;
    }
    .shopEventBanner > picture:only-child{
        margin-left: auto;
    }
    .cityPanelTitlePref{
        width: 590px;
    }
    .prefArrowBottom{
        margin: 0;
        margin-right: -11px;
    }
    .searchFlex{
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        margin: auto;
        width: 900px;
        max-width: 900px;
        justify-content: space-between;
    }
    .cityPanelFilterWrap{
        width: 550px;
    }
    .prefMapBtn{
        width: 220px;
        margin: 0;
        margin-left: 15px;
        display: flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
        gap: 15px;
        align-self: flex-start;
        height: 30px;
        padding: 15px 18px;
        font-size: 18px;
        font-weight: 600;
    }
    .arrowWrap{
        margin-left: auto;
    }
    .cityOnlyPanelFilter{
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
    #mainArea.shopSearch .cityPadding{
        padding-top: 23px;
    }
    .img100{
        width: 1120px;
        margin: auto;
    }
    .img100 img{
        width: 100%;
    }
    .shopSubName{
        text-align: left;
        font: normal 700 normal 16px/20px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    .shopMainName{
        text-align: left;
        font: normal 700 normal 28px / 40px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    .overBox > div > div > div.shopcs{
        display: inline-flex;
        text-align: left;
        font: normal normal normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
        justify-content: center;
        margin-top: 22px;
    }
    .overBox > div > div > div.shopcs > p{
        font-weight: bold;
		font-size: 14px;
        line-height: 28px;
		margin-right: 20px;
    }
    .overBox > div > div > div.shopcs > div.shopcsStar{
        position: relative;
        margin-right: 20px;
        bottom: 5px;
    }
    div.overBox > div > div > div.shopcs > div.shopcsScore{
        text-align: left;
        font: normal normal bold 18px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
    }
    div.overBox > div > div > div.shopcs > div > div > div.shopcsScore > span{
        font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif !important;
		font-size: 14px;
        line-height: 20px;
		letter-spacing: 0px;
	    color: #333333;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > figure > img{
        width: 354px;
        height: 210px;
        object-fit: contain;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline figure img {
        height: 47px;
    }
    .sectionPcOnly{
        margin-top: 20px;
        margin-bottom: 25px;
        width: 100%;
        text-align: center;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > p{
        margin-top: 22px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > p.shopAddress{
        text-align: left;
        font: normal normal normal 18px/24px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > p.shopTime{
        text-align: left;
        font: normal normal normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > p.shopArea{
        text-align: left;
        font: normal normal normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #666666;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div > div.shopSubInfoContentCity{
        display: flex;
        text-align: left;
        font: normal 600 normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        opacity: 1;
        color: #666666;
        margin-top: 22px
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div > div > p.left{
        letter-spacing: 1.1px;
        width: 78.49px;
        margin-right: 50px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div > div > p.right{
        /* UI Properties */
        text-align: left;
        font: normal normal normal 14px/28px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
        letter-spacing: 0px;
        color: #333333;
        opacity: 1;
        width: 550px;
        word-wrap: break-word;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div > img{
        height: 79px !important;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter{
        margin-top: 0px;
        margin-left: 109px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd{
        display: flex;
        margin-top: 10px;
		font-weight: bold;
		font-size: 28px;
        line-height: 28px;
		letter-spacing: 0px;
        align-items: center;
        margin-bottom: 17px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd > a{
        position:relative;
        top: 5px;
        color: #69A73F;
        border: none;
        border-top: 3px solid #69A73F;
        border-bottom: 3px solid #69A73F;
        padding: 10px;
        display: block;
        margin-bottom: 10px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd > div.shopLinks{
        display: flex;
        width: 600px;
        justify-content: space-between;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd > div > a{
        margin-left: 50px;
        display: block;
        width: 255px;
        height: 54px;
        background: #EF6D00;
        border-radius: 6px;
        box-shadow: 0px 2px 0px #00000033;
        text-align: center;
        /* UI Properties */
        font: normal normal normal 18px/32px Hiragino Sans;
        letter-spacing: 0px;
        color: #FFFFFF;
        line-height: 54px;
        opacity: 1;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd > div > a > img{
        padding-bottom: 5px;
        padding-left: 5px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopFooter > dd > div > a.contact{
        background:#69A73F;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li > p{
        display: none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li:hover > p{
        background: #707070 0% 0% no-repeat padding-box;
        opacity: 0.9;
        display: block;
        line-height: 140%;
        position: absolute;
        white-space: nowrap;
        border-radius: 3px;
        padding: 8px 12px;
        bottom: calc(40px + 10px);
        bottom: 31px;
        font-size: 11px;
        line-height: 18px;
        letter-spacing: 0px;
        color: #FFFFFF;
        z-index: 5000;
    }
    .divideBlock{
        width: 1120px;
        margin: auto;
        text-align: right;
        margin-top: 51px;
        border-top: 1px solid #D4CEC4;
        padding-top: 18px;
    }
    .divideBlockPref{
        position: relative;
        top: 14px;
        width: 1120px;
        padding-bottom: 37px;
        margin: auto;
        border-top: 1px solid #D4CEC4;
        z-index: 0;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li {
        background:#FFFFFF;
        border: 2px solid #D9D4CB;
        box-shadow: 0px 2px 0px #00000033;
        border-radius: 6px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink{
        display:flex;
        justify-content: space-between;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink > div.faAngleBox > i{
        position: relative;
        top: 50px;
        font-size: 3em;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink > div.shopName > span.shopMainName > i{
        display:none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div.shopNameAndLink > div.faAngleBox > div > img{
        display:none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock-sp > div.shopOutline > figure > img{
        display: none;
        margin: auto;
        width: 92%;
    }
    .shopBlock-sp{
        display: none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > p > img{
        width: 19px;
        height: 23px
    }
    .overBox{
        position:relative;
    }
    .link_a{
        position: absolute;
        top: 0;
        left: 0;
        height:100%;
        width: 100%;
    }
    .box{
        position:relative;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.shopBlock > div.shopFooter > dd > a > img{
        position:relative;
        bottom: 3px;
    }
    .sp{
        display: none;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div{
        height: 100%;
        display: flex;
        justify-content: space-between;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div.faAngleBox{
        display: flex;
        align-items: center;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div.faAngleBox > i{
        font-size: 3em;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.overBox > div > div > div > div > span.shopMainName > i{
        display: none;
    }

    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div{
        display: flex;
        justify-content: space-between;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div > div.shopNameAndLink > div > span.shopMainName > i{
        display: none;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div > ul > li{
        display: flex;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div > ul > li > img{
        opacity: 1;
        width:170px;
        margin-right: 10px;
    }
    #mainArea > article > div.selectPrefectureArea > section > div.caseWrap.bannreArea.pc > ul > div.owl-controls {
        /* display: none; */
        width: 550px;
    }
    #mainArea > article > div.selectPrefectureArea > section > div.caseWrap.bannreArea.pc > ul > div.owl-controls > div.owl-dots {
        /* display: none; */
        width: 550px;
        display: flex;
        justify-content: center;
    }
    #mainArea .mainSec .caseList._sub .owl-controls .owl-nav {
        width: 630px !important;
    }
    #mainArea > article > div.selectPrefectureArea > section{
        margin-bottom: initial;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div.faAngleBox{
        display: flex;
        align-items: center;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.overBox > div > div.faAngleBox > i{
        font-size: 3em;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li > img.tCardImg{
        height: 32px;
        width: 32px;
    }
    #mainArea > article > div:nth-child(5) > div > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li > img.paypayImg{
        height: 32px;
        width: 32px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li > img.tCardImg{
        height: 32px;
        width: 32px;
    }
    #mainArea > article > div.caseWrap > div.searchWrap > ul > li > div.shopBlock > div.shopOutline > div > div.iconList > ul > li > img.paypayImg{
        height: 32px;
        width: 32px;
    }
    #mainArea > article > .prefTopContent{
        width: 820px;
        margin: auto;
        display: flex;
        background-color: #FEF2E8;
        border: #ED6E01 1px solid;
        margin-bottom: 40px;
        padding: 30px 40px;
        gap: 29px;
    }
    .prefTopContentText{
        color: #666666;
        font-size: 16px;
        width: 610px;
    }
    .prefContentTitle{
        font-size: 18px;
        margin-bottom: 16px;
        font-weight: 600;
        line-height: 28px;
    }
    .prefTopContentText a {
        display: block;
        margin-top: 27px;
        color: #EF6D00;
        font-weight: 600;
    }
    .prefAllow{
        position: relative;
        display: inline-block;
        padding: 10px;
    }
    .prefAllow::before{
        content: '';
        width: 8px;
        height: 8px;
        border-radius: 1;
        border-top: solid 2px #ED621F;
        border-right: solid 2px #ED621F;
        position: absolute;
        left: 10px;
        top: 9px;
        transform: rotate(45deg);
        z-index: 10;
    }
    #mainArea .mainSec.customer{
        margin-bottom: 0px;
        padding-top: 0px;
        padding-bottom: 10px;
    }
    #mainArea .mainSec.rehome{
        padding-top: 70px;
        padding-bottom: 0px;
        margin-bottom: 0px;
    }
    #mainArea .mainSec{
        background-color: #F7F6F4;
    }
    .customerWrap{
        display: flex;
        position: relative;
        width: 1120px;
        flex-wrap: wrap;
        margin: auto;
        z-index: 2;
        gap: 24px;
    }
    #mainArea .mainSec.customer,
    #mainArea .mainSec.rehome,
    #mainArea .mainSec.hojokin,
    #mainArea .mainSec.faq {
        width: auto;
        margin: 0;
    }
    #mainArea .mainSec.customer{
        position: relative;
        padding-top: 113px;
    }
    .prefText{
        line-height: 28px;
    }
    .customerItem{
        max-height: 191px;
        position: relative;
        background-color: #FDF4EB;
        border: 1px solid #EF6D00;
        border-radius: 6px;
        width: 546px;
        min-height: 120px;
        margin-bottom: 30px;
    }
    .customerItem::after {
        content: '';
        position: absolute;
        bottom: -22px;
        right: 0px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 30px 30px 0 0;
        border-color: #FDF4EB transparent transparent transparent;
        transform: scale(-1, 1);
    }
    .customerItem::before {
        content: '';
        position: absolute;
        bottom: -24.8px;
        right: -1px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 34px 34px 0 0;
        border-color: #EF6D01 transparent transparent transparent;
        transform: scale(-1, 1);
        z-index: -1;
    }
    .customerWrap li:nth-child(2n){
        margin-right: 0px;
    }
    .customerInner{
        display: flex;
        flex-direction: column;
        height: 100%;
        position: relative;
    }
    .customerText{
        margin: 24px 24px 16px 24px;
        font-size: 16px;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 26px;
    }
    .customerLink{
        width: auto;
        margin-right: 24px;
        text-align: right;
        padding-bottom: 24px;
        color: #EF6D00;
        text-decoration: underline;
        margin-top: auto;
    }
    .rehomeBanner{
        width: 600px;
        margin: auto;
        padding-bottom: 0px;
    }
    .rehomeBanner h2{
        margin-bottom: 48px;
        font-size: 28px;
        color: #666666;
        font-weight: 600;
        text-align: center;
    }
    .rehomeBanner h3{
        font-size: 16px;
        color: #666666;
        margin-top: 15px;
    }
    .rehomeBannerItem a picture img {
        width: 600px;
    }
    #mainArea .mainSec.hojokin{
        margin-bottom: 0px;
        padding-bottom: 40px;
    }
    #mainArea .mainSec.hojokin h2{
        margin-top: 40px;
    }
    #mainArea .mainSec.faq h2{
        margin-top: 0px;
    }
    .hojokinBanner{
        width: 896px;
        display: flex;
        margin: auto;
        gap: 34px;
    }
    .hojokinItem h3{
        color: #666666;
        font-weight: 600;
        font-size: 16px;
        margin-top: 9px;
    }
    .hojokinItem a picture img {
        width: 432px;
    }
    #mainArea .mainSec.faq{
        margin-bottom: 0px;
    }
    #mainArea .mainSec .faqWrap{
        width: 900px;
        margin: auto;
        padding-top: 0px;
    }
    .faq .question{
        color: #EF6D00;
        font-weight: 600;
        font-size: 16px;
        background-color: #FEECE3;
        padding: 24px 0 23px 25px;
    }
    .faq .answer{
        display: flex;
        padding: 26px 25px 24px 25px;
        background-color: #FFFFFF;
        color: #666666;
    }
    .answer p{
        font-size: 16px;
        line-height: 26px;
    }
    .faqItem{
        padding-bottom: 20px;
    }
    .question span{
        font-size: 20px;
        margin-right: 13px;
    }
    .answer span{
        font-size: 20px;
        color: #EF6D00;
        margin-right: 13px;
    }
    .clamp-text {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .cityPanelFilter{
        display: block;
        width: 575px;
        margin: auto;
        padding-top: 15px;
        padding-bottom: 15px;
        padding-left: 16px;
        padding-right: 30px;
        background: #FFF;
        border-radius: 8px 8px 0 0;
        border: 2px solid #D4CEC4;
        position: relative;
    }
    .prefArrow{
        margin-left: auto;
    }
    .cityPanelFilter .cityPanelTitle > p{
        font-size: 18px;
        line-height: 18px;
        letter-spacing: 0px;
            color: #666666;
            font-weight: 600;
            font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Noto Sans JP","メイリオ", Meiryo;
    }
    .firstMessageWrap {
        position: relative;
    }
    .firstMessage {
        border: 1px solid #EBE9E5;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
        background-color: #fff;
        padding: 10px;
        position: absolute;
        top: -420%;
        right: -310px;
        font-size: 1.125rem;
        white-space: nowrap;
    }
    .firstMessage::after {
        content: "";
        position: absolute;
        bottom: -10px;
        right: 20px;
        width: 0;
        height: 0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 10px solid #fff;
        border-bottom: none;
    }
    
    .serviceFilterModal{
        background-color: #FFFFFF;
        padding: 30px 0;
    }
    .serviceFilterInmodal{
        background-color: #FFFFFF !important;
        padding: 0 !important;
    }
    .serviceFilter{
        display: block;
        width: 900px;
        margin: auto;
        margin-top: 1%;
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 16px;
        padding-right: 30px;
        background: #FFF;
        border-radius: 8px 8px;
        border: 2px solid #D4CEC4;
        position: relative;
        font-weight: 700;
    }
    .serviceFilter:hover{
        border: 2px solid #ef6d00; 
        background-color: #FFF5ED;
    }
    .filterHelpIcon {
        margin-top: 2px;
        vertical-align: top;
    }
    .searchReformPlaceCat span {
        font-weight: 600;
    }
    .filterMain {
        font-weight: bold;
    }
    .serviceTitle {
        width: 100%;
        font-size: 18px;
        line-height: 18px;
        letter-spacing: 0px;
        cursor: pointer;
        color: #666666;
        display: flex;
        align-items: center;
        font-weight: 600;
        font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Noto Sans JP","メイリオ", Meiryo;
    }
    .plusIcon{
        margin-left: auto;
    }
    .sortIcon{
        margin-right: 20px;
    }
    .serviceFilterNames{
        width: 80%;
        margin: auto;
    }
    .serviceFilterTitle{
        font-size: 1.125rem;
        margin: 0 0 28px 0;
        font-weight: bold;
    }
    .serviceName{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 20px;
    }
    .serviceName label{
        font-size: 1rem;
        display: flex;
        width: 30%;
        margin-bottom: 30px;
    }
    .serviceFilterClose{
        position: absolute;
        top: -20px !important;
    }
    input[type="checkbox"].serviceFilterName {
        display: inline-block !important;
        accent-color: #EF6D00;
        height: 20px;
        width: 20px;
        margin: 0 10px 0 0;
    }
    .meisterFlex{
        justify-content: flex-start;
    }
    .meisterFlex label{
        margin-right: 40px;
        align-items: center;
    }
    .serviceSubmit{
        margin-left: 10px;
        font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "メイリオ", Meiryo;
    }
    .serviceReset{
        font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Noto Sans JP", "メイリオ", Meiryo;
    }
    .brsp{
        display: none;
    }
    .filterBtn .submitBtn{
        font-weight: 400;
    }
    .filterBtn .resetBtn{
        font-weight: 400;
    }
    .filterMeisterImg{
        width: 80%;
    }
}
.readmore {
    display: inline-block;
    width: 100%;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0px;
    color: #666666;
    font-weight: 500;
    text-align:center;
}
.readmore:before {
  content: "";
  text-align: center;
  border-radius: 50%;
  display: block;
  margin: 0 auto .5em;
  transition: .3s;
}
.readmore .open {
  display: block;
  font: normal normal normal 18px / 30px "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 600;
}
.readmore.on-click .open {
  display: none;
}
.readmore .close {
  display: none;
}
.readmore.on-click .close {
  display: block;
}
.prefArrow{
    width: auto;
}
.cityPanelTitlePref{
    display: flex;
    align-items: center;
    height: 100%;
}
.cityPanelFilterPref{
    border-radius: 8px;
    border-bottom: none;
    height: 30px;
    display: flex;
}
.spacer {
    width: 100%;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox h3 {
	color:#ed6d00;
	font-weight:bold;
	line-height:130%;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopAddress {
	line-height:150%;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel {
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	line-height:100%;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel a {
	color:#369f00;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .shopOutline .shopOutlineBox .shopTel .fas {
	font-size:80%;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	justify-content:flex-end;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .shopBlock .btnList ul:first-of-type {
	margin-left:0;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconMeister li:last-of-type {
	margin-bottom:0;
}
#mainArea > article > div.caseWrap > div.searchWrap > ul > li .iconList .iconGeneral {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
    gap:5px;
}
.footer-space{
    width: 100%;
    margin-bottom: 20px;
}
