@charset "UTF-8";

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	common
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop{
    background: #FEF8E8;
    padding-top: 86px;
}
@media only screen and (max-width: 1024px) {
    .shop{
        padding-top: 54px;
    }
}

/*inner
———————————————————————————————————————————————————————————————————*/
.shop__inner{
    max-width: 1120px;
	margin: 0 auto;
}
.shop__inner--detail{
    position: relative;
    background: #fff;
    border-radius: 4px;
    padding: 80px 60px;
}
.shop__inner--detail::before{
    position: absolute;
    content: "";
    top: 20px;
    left: 20px;
    width: 120px;
    height: 120px;
    background-image: url(/wordpress/wp-content/themes/resocaba__theme/images/common/decoration__left.svg);
    background-image: url(../../images/common/decoration__left.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.shop__inner--detail::after{
    position: absolute;
    content: "";
    top: 20px;
    right: 20px;
    width: 120px;
    height: 120px;
    background-image: url(/wordpress/wp-content/themes/resocaba__theme/images/common/decoration__right.svg);
    background-image: url(../../images/common/decoration__right.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
@media only screen and (max-width: 1024px) {
    .shop__inner{
        max-width: 100%;
        padding: 0 20px;
    }
    .shop__inner--detail{
        padding: 80px 20px;
    }
}
@media only screen and (max-width: 768px) {
    .shop__inner--detail{
        padding: 48px 20px;
    }
    .shop__inner--detail::before{
        top: 10px;
        left: 10px;
        width: 50px;
        height: 50px;
    }
    .shop__inner--detail::after{
        top: 10px;
        right: 10px;
        width: 50px;
        height: 50px;
    }
}

/*content
———————————————————————————————————————————————————————————————————*/
.shop__content{
    margin: 0 auto 80px;
}
@media only screen and (max-width: 1024px) {
    .shop__content{
        margin: 0 auto 64px;
    }
}
@media only screen and (max-width: 768px) {
    .shop__content{
        margin: 0 auto 40px;
    }
}

/*title
———————————————————————————————————————————————————————————————————*/
.shop__title{
    width: 100%;
	margin: 0 auto 48px;
    text-align: center;
}
.shop__title h1{
    color: #2D220C;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.4;
    margin-bottom: 32px;
}
.shop__title p{
    color: #705319;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
}
@media only screen and (max-width: 768px) {
    .shop__title{
        margin: 0 auto 24px;
    }
    .shop__title h1{
        font-size: 20px;
        margin-bottom: 20px;
    }
    .shop__title p{
        font-size: 16px;
    }
}

/*midashi
———————————————————————————————————————————————————————————————————*/
.shop__midashi{
    color: #705319;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5;
    margin-bottom: 32px;
}
@media only screen and (max-width: 1024px) {
    .shop__midashi{
        margin-bottom: 24px;
    }
}
@media only screen and (max-width: 768px) {
    .shop__midashi{
        font-size: 18px;
        margin-bottom: 16px;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	image
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__image--slider{
    margin-bottom: 8px;
}
.shop__image--thumb .slick-list {
  margin: 0 -4px;
}
.shop__image--thumb .slick-slide {
  padding: 0 4px;
}
.shop__image--thumb .slick-prev,.shop__image--thumb .slick-next{
    width: 40px;
    height: 40px;
    z-index: 2;
}
.shop__image--thumb .slick-prev::before,.shop__image--thumb .slick-next::before{
    content: none;
}
.shop__image--thumb .slick-prev > div,.shop__image--thumb .slick-next > div{
    position: relative;
    background: #333333;
    width: 40px;
    height: 40px;
    border-radius: 50%;
}
.shop__image--thumb .slick-prev > div::before,.shop__image--thumb .slick-next > div::before{
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 7px;
    height: 14px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.shop__image--thumb .slick-prev > div::before{
    background-image: url(/wordpress/wp-content/themes/resocaba__theme/images/common/slick__prev.svg);
    background-image: url(../../images/common/slick__prev.svg);
}
.shop__image--thumb .slick-next > div::before{
    background-image: url(/wordpress/wp-content/themes/resocaba__theme/images/common/slick__next.svg);
    background-image: url(../../images/common/slick__next.svg);
}
@media only screen and (max-width: 768px) {
    .shop__image--slider{
        margin-bottom: 4px;
    }
    .shop__image--thumb .slick-list {
        margin: 0 -2px;
    }
    .shop__image--thumb .slick-slide {
        padding: 0 2px;
    }
    .shop__image--thumb .slick-prev,.shop__image--thumb .slick-next{
        display: none!important;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	introduction
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__introduction{
    max-width: 740px;
    text-align: left;
}
@media only screen and (max-width: 768px) {
    .shop__introduction{
        max-width: 100%;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	news
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__news{
    border: 1px solid #D3C6AA;
    padding: 24px 40px;
}
.shop__news h2{
    text-align: center;
}
.shop__news > div{
    display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.shop__news > div img{
    width: 30.434782608%;
}
.shop__news > div p{
    width: 66.956521739%;
}
@media only screen and (max-width: 768px) {
    .shop__news{
        padding: 20px;
    }
    .shop__news > div{
        flex-direction: column;
    }
    .shop__news > div img{
        width: 100%;
        margin-bottom: 16px;
    }
    .shop__news > div p{
        width: 100%;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	point
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__point .type1__flex3{
    align-items: flex-start;
}
.shop__point .type1__flex3 > div{
    width: 31.7%;
}
.shop__point--title{
    display: flex;
	align-items: center;
	justify-content: flex-start;
    margin-bottom: 16px;
}
.shop__point--title > p:nth-of-type(1){
    color: #C3A76C;
    font-family: 'Parisienne';
    font-size: 40px;
	font-weight: 500;
	line-height: 1;
    margin-right: 10px;
}
.shop__point--title > p:nth-of-type(2){
    color: #705319;
    font-size: 24px;
	font-weight: 700;
	line-height: 1;
    letter-spacing: 0.03em;
}
@media only screen and (max-width: 768px) {
    .shop__point .type1__flex3{
        flex-direction: column;
    }
    .shop__point .type1__flex3 > div{
        width: 100%;
        margin-bottom: 32px;
    }
    .shop__point--title{
        margin-bottom: 12px;
    }
    .shop__point--title > p:nth-of-type(1){
        font-size: 30px;
    }
    .shop__point--title > p:nth-of-type(2){
        font-size: 18px;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	treatment
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__treatment .type1__flex3{
    align-items: flex-start;
}
.shop__treatment .type1__flex3 > div{
    width: 31.7%;
}
.shop__treatment--title{
    margin-bottom: 16px;
}
.shop__treatment--title > p{
    color: #705319;
    font-size: 20px;
	font-weight: 700;
	line-height: 1;
    letter-spacing: 0.03em;
}
.shop__treatment .type1__flex3 > div img{
    margin-bottom: 16px;
}
@media only screen and (max-width: 768px) {
    .shop__treatment .type1__flex3{
        flex-direction: column;
    }
    .shop__treatment .type1__flex3 > div{
        width: 100%;
        margin-bottom: 32px;
    }
    .shop__treatment--title{
        margin-bottom: 12px;
    }
    .shop__treatment--title > p{
        font-size: 18px;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	voice
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__voice .type1__flex2{
    align-items: flex-start;
}
.shop__voice .type1__flex2 > div{
    width: 48%;
}
@media only screen and (max-width: 768px) {
    .shop__voice .type1__flex2{
        flex-direction: column;
    }
    .shop__voice .type1__flex2 > div{
        width: 100%;
        margin-bottom: 32px;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	info
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__info .type1__flex2{
    align-items: flex-start;
}
.shop__info .type1__flex2 > div:nth-of-type(1){
    width: 53.6%;
}
.shop__info .type1__flex2 > div:nth-of-type(1) > div{
	display: flex;
	align-items: center;
	justify-content: flex-start;
    margin-bottom: 16px;
}
.shop__info .type1__flex2 > div:nth-of-type(1) > div > p{
    line-height: 2;
}
.shop__info .type1__flex2 > div:nth-of-type(1) > div > p a{
    color: #C3A76C;
    border-bottom: 1px solid #C3A76C;
}
.shop__info .type1__flex2 > div:nth-of-type(1) > div > p:nth-of-type(1){
    width: 22.388059701%;
    margin-right: 24px;
}
.shop__info .type1__flex2 > div:nth-of-type(1) > div > p:nth-of-type(2){
    flex: 1;
}
.shop__info .type1__flex2 > div:nth-of-type(2){
    width: 44%;
}
.shop__info .type1__flex2 > div:nth-of-type(2) iframe{
    width: 100%;
    min-height: 320px;
    max-height: 480px;
}
@media only screen and (max-width: 768px) {
    .shop__info .type1__flex2{
        flex-direction: column;
    }
    .shop__info .type1__flex2 > div:nth-of-type(1){
        width: 100%;
        margin-bottom: 32px;
    }
    .shop__info .type1__flex2 > div:nth-of-type(1) > div > p:nth-of-type(1){
        margin-right: 12px;
    }
    .shop__info .type1__flex2 > div:nth-of-type(2){
        width: 100%;
    }
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	message
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
.shop__message div{
    border: 1px solid #D3C6AA;
    padding: 24px 40px;
}
@media only screen and (max-width: 768px) {
    .shop__message div{
        padding: 20px;
    }
}
