@charset "utf-8";

:root{--Width: 86%;--MaxWidth: inherit;--MinWidth: inherit;--Margin:0 auto;--Padding: 40px 0 50px 0;}

article .MainTxt{font-size: 15px;line-height: 1.8;text-align: left;margin-bottom: 35px;}
article .MainTxt br{
    display: none;
}
article .CommonTtl{
    margin-bottom: 25px;
}
article .CommonTtl .sub{
    font-size: 34px;
    margin-top: -1.3em;
}
article .CommonTtl .main{
    font-size: 19px;
}

article .CommonTtl.black{}
article .CommonTtl.black .sub{}
article .CommonTtl.black .main{}

article .btn{}
article .btn a{
    display: block;
    padding: 15px 20px;
}
article .btn a:after{}
article .btn a:hover{}
article .Contents{}

article .MainMV{
    display: block;
}
article .MainMV li{}
article .MainMV li img{}

a.smpTel{
    text-decoration: underline;
    font-size: 15px;
}

/*---------------------------------------#MVMainTxt*/

#MVMainTxt{
    display: block;
    padding-top: 40px;
    width: var(--Width);
    margin: 0 auto;
    text-align: center;
}
#MVMainTxt .logo{
    width: 60%;
    margin: 0 auto;
    margin-bottom: 15px;
}
#MVMainTxt .logo img{}
#MVMainTxt .Main{}
#MVMainTxt .Main h1{
    font-size: 20px;
}
#MVMainTxt .Main h1 span{}
#MVMainTxt .Main .txt{
    text-align: left;
    line-height: 1.8;
    font-size: 15px;
}
#MVMainTxt .Main .txt br{
    display: none;
}

/*--------------------------------------MVbackphoto*/
.MVbackphoto{}
.MVbackphoto .slick-list{}
.MVbackphoto .slick-list li{
    width: 250px;
}
.MVbackphoto li .img{}
.MVbackphoto li .img img{}
.MVbackphoto li .caption{}


/*-----------------------------------------------------menuArea*/
.commonHeader{position:relative}
.wrapper{padding-top:0}
.header_change{display:none}

.menuArea{padding: 0;}
.menuArea.header_fixed.fixed{position: fixed;display: block;}
.menuArea.header_fixed:before,
.menuArea.header_fixed:after{
    content: none;
}

.menuArea{position: absolute;width:100%;top:0;z-index:999}
.menuArea.header_fixed{
    display: none;
}
.menuArea .Inner{display:none;width: 100%;box-sizing:border-box;-webkit-overflow-scrolling:touch;background-color: rgba(0,0,0,0.8);box-sizing: border-box;padding: 10px 10px 20px 50px;}
.menuArea .humb{display:flex;position:absolute;right:10px;top:10px;width:45px;height:45px;box-sizing:border-box;justify-content:center;align-items:center;border-radius:3px;background-color: var(--PointColor);box-shadow:0 0 5px rgba(0,0,0,0.2);z-index:10001;padding-top: 7px;}
.menuArea .humb span{border-top: 1px solid #fff;display:block;padding-top:5px;letter-spacing:.5px;position:relative;font-weight:700;font-size: 10px;color: #fff;}
.menuArea .humb span:before,.menuArea .humb span:after{content:"";border-top: 1px solid #fff;display:block;width:100%;height:1px}
.menuArea .humb span:before{margin-bottom:3px}
.menuArea .humb span:after{content:"";position:absolute;left:0;top:-6px}
.menuArea.open{position:fixed;top:0;left:0;width:100%;z-index:10000}
.menuArea.open .humb{position:fixed;right:auto;left: 4px;top: 4px;background:transparent;box-shadow:none}
.menuArea.open .humb span{display:none}
.menuArea.open .humb:before,.menuArea.open .humb:after{content:"";display:block;position:absolute;width:2px;height:30px;background:#fff;top:50%;left:50%}
.menuArea.open .humb:before{transform:translate(-50%,-50%) rotate(45deg)}
.menuArea.open .humb:after{transform:translate(-50%,-50%) rotate(-45deg)}

.menuArea.open .Close:before,
.menuArea.open .Close:after{content:"";width: 2px;height: 47px;background: #fff;top: 20px;display: block;left: 20px;position: absolute;}
.menuArea.open .Close:before{transform: translate(-50%,-50%) rotate(45deg);}
.menuArea.open .Close:after{transform: translate(-50%,-50%) rotate(-45deg);}

.menuArea .Inner ul{
    width: 100%;
    flex-direction: column;
    row-gap: 10px;
}
.menuArea .Inner li{}
.menuArea .Inner li a{
    padding: 14px 10px;
    border: 1px solid rgb(255 255 255 / 40%);
    border-radius: 3px;
    font-size: 14px;
    text-align: left;
}
.menuArea .Inner li a:after{position: absolute;right: 10px;top:50%;margin-top:-0.5em;content: "\f103";font-family:FontAwesome;line-height: 1;font-weight: normal;font-size: 120%;}

.menuArea .Inner li a br{
    display: none;
}
.menuArea .Inner li a:hover,
.menuArea .Inner li.active a{
    background-color: rgb(0 0 0 / 88%);
}
.menuArea .Inner li + li:before{
    content: none;
}




/*-----------------------------------About*/
#About{}
#About h2{
    margin-bottom: 30px;
}
#About .MainMV{
    display: block;
    margin-bottom: 20px;
}
#About .Inner{
    width: var(--Width);
}
#About .Inner .Box{}
#About .Inner .Box + .Box{
    margin-top: 45px;
    flex-direction: column;
    row-gap: 35px;
}
#About .Inner .Box .Entry{/* flex-direction: column; */row-gap: 10px;}
#About .Inner .Box .Entry .Main{}
#About .Inner .Box .Entry .Main .icon{
    top: 0;
    right: 20px;
    font-size: 100px;
}
#About .Inner .Box .Entry .Main h3{
    font-size: 17px;
}
#About .Inner .Box .Entry .Main h3 span{}
#About .Inner .Box .Entry .Main h3 span + span{}
#About .Inner .Box .Entry .Main .txt{
    font-size: 14px;
}
#About .Inner .Box .Entry .Main .btn{}

#About .Inner .Box .Entry .photo{
    margin-bottom: 0;
    margin-top: 10px;
}
#About .Inner .Box .Entry .photo img{}

#About .Inner .Box:nth-of-type(1) .Entry{
    flex-direction: column-reverse;
}
#About .Inner .Box:nth-of-type(1) .Entry .Main{}
#About .Inner .Box:nth-of-type(1) .Entry .Main .icon{}
#About .Inner .Box:nth-of-type(1) .Entry .Main h3{
    font-size: 17px;
}
#About .Inner .Box:nth-of-type(1) .Entry .Main h3 span{}
#About .Inner .Box:nth-of-type(1) .Entry .Main h3 span + span{}
#About .Inner .Box:nth-of-type(1) .Entry .Main .txt{}
#About .Inner .Box:nth-of-type(1) .Entry .Main .btn{}
#About .Inner .Box:nth-of-type(1) .Entry .photo{
    width: 100%;
}
#About .Inner .Box:nth-of-type(1) .Entry .photo img{}


#About #Search{
    width: 100%;
    margin-top: 50px;
}
#About #Search h3{
    font-size: 16px;
    text-align: center;
}
#About #Search .Main{}
#About #Search .Main .Top{}
#About #Search .Main .Btm{}
#About #Search .Main .Btm li:nth-of-type(1){}
#About #Search button{}
#About  #Search .Btn{}
#About #Search button:hover{}
#About #Search .Main .Btm{}
#About #Search .Btn{}
#About #Search button{}


/*----------------------------------------Recom*/
#Recom{
}
#Recom .MainTxt{
    width: var(--Width);
    margin: 0 auto;
    margin-bottom: 30px;
}
#Recom .Sec{
    padding: 40px 0;
}
#Recom .Sec:before{}
#Recom .Sec + .Sec{
    margin-top: 10px;
}
#Recom .Sec h3{
    margin-bottom: 35px;
}
#Recom .Sec h3 .main{
    font-size: 22px;
}
#Recom .Sec h3 .sub{
    font-size: 55px;
}

#Recom .Sec .MainMV{
    width: var(--Width);
    margin: 0 auto;
    margin-bottom: 20px;
}
#Recom .Sec .Intro{
    display: block;
    width: var(--Width);
}
#Recom .Sec .Intro .Main{
    width: 100%;
    margin-bottom: 30px;
}
#Recom .Sec .Intro .Main h4{
    margin-bottom: 10px;
}
#Recom .Sec .Intro .Main h4 .sub{
    font-size: 12px;
    padding-bottom: 2px;
}
#Recom .Sec .Intro .Main h4 .main{
    font-size: 20px;
}
#Recom .Sec .Intro .Main .txt{
    font-size: 14px;
    line-height: 1.8;
}

#Recom .Sec .Intro .Point{}
#Recom .Sec .Intro .Point .box{
    display: block;
}
#Recom .Sec .Intro .Point .box + .box{}
#Recom .Sec .Intro .Point .box dl{
    width: auto;
}
#Recom .Sec .Intro .Point .box dt{}
#Recom .Sec .Intro .Point .box dd{}
#Recom .Sec .Intro .Point .box dd br{
    display: none;
}
#Recom .Sec .Intro .Point .box .txt{
    border: none;
    padding-left: 0;
    padding-top: 10px;
}
#Recom .Sec .Intro .Point .box.staff{}
#Recom .Sec .Intro .Point .box.customer{}

#Recom .Sec .Intro .Point .box:before{}
#Recom .Sec .Intro .Point .box:after{}

#Recom .Sec .Intro .Point .box.staff:after{}
#Recom .Sec .Intro .Point .box.customer:after{}

#Recom .Sec .btn{
    width: var(--Width);
    flex-direction: column;
    row-gap: 10px;
    margin-top: 30px;
}

#Recom .Sec .btn li{}
#Recom .Sec .btn li a{
    font-size: 14px;
    padding: 15px 20px;
}

/*-------------------------------------Guide*/
#Guide{
    width: var(--Width);
    margin: 0 auto;
}
#Guide .Intro{}
#Guide .Intro .MainMV{}
#Guide .Intro .logo{}
#Guide .Intro .logo dt{
    width: 90px;
}
#Guide .Intro .logo dd{
    font-size: 20px;
}

#Guide .Intro h3{
    font-size: 17px;
}
#Guide .Intro .Info{}
#Guide .Intro .Info dt{
    font-size: 15px;
    text-align: left;
}
#Guide .Intro .Info dt br{
    display: none;
}
#Guide .Intro .Info dd{
    padding: 10px;
}
#Guide .Intro .Info dd ul{
    display: block;
}
#Guide .Intro .Info dd li{
    width: auto;
}
#Guide .Intro .Info dd li.long{
    width: auto;
}
#Guide .Intro .Info dd li + li{}
#Guide .Intro .Info dd li:before{}
#Guide .Intro .Point{
    flex-direction: column;
    row-gap: 30px;
}
#Guide .Intro .Point .box{
    width: 100%;
    flex-direction: column;
}
#Guide .Intro .Point .box + .box{}
#Guide .Intro .Point .box dl{
    width: 100%;
}
#Guide .Intro .Point .box dt{}
#Guide .Intro .Point .box dd{}
#Guide .Intro .Point .box dd br{
    display: none;
}
#Guide .Intro .Point .box .txt{
    border: none;
    padding-left: 0;
    padding-top: 7px;
}
#Guide .Intro .Point .box.staff{}
#Guide .Intro .Point .box.customer{}

#Guide .Intro .Point .box:before{}
#Guide .Intro .Point .box:after{}

#Guide .Intro .Point .box.staff:after{}
#Guide .Intro .Point .box.customer:after{}

#Guide .Intro .btn{
    margin-top: 0;
    flex-direction: column;
    row-gap: 10px;
}

#Guide .Intro .btn li{}
#Guide .Intro .btn li a{
    padding: 15px 20px;
    font-size: 14px;
}


/*-----------------------------Shop*/
#Shop{}
#Shop h2{
    margin-bottom: 20px;
}
#Shop .MainTxt{
    width: var(--Width);
    margin: 0 auto;
    margin-bottom: 20px;
}
#Shop .Entry{
    width: var(--Width);
    padding-top: 20px;
}

#Shop .Entry + .Entry{padding-top: 25px;}
#Shop .Entry .Title{
    flex-direction: column;
    margin-bottom: 15px;
}
#Shop .Entry .Title dt{margin-bottom: 15px;}
#Shop .Entry .Title dt p{
    margin: 0 auto;
    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-direction: row-reverse;
}
#Shop .Entry .Title dt .sub{
    font-size: 16px;
    opacity: 1;
    color: var(--MainDarkColor);
    padding-left: 10px;
}
#Shop .Entry .Title dt .main{
    font-size: 22px;
    margin-top: 0;
}
#Shop .Entry .Title dd{
    font-size: 14px;
}
#Shop .Entry .Title dd br{
    display: none;
}

#Shop .Entry .Intro{
    flex-direction: column;
    row-gap: 10px;
}
#Shop .Entry .Intro .topic{
    box-sizing: border-box;
    font-size: 14px;
    padding: 10px 12px;
}
#Shop .Entry:nth-of-type(even) .Intro{
    flex-direction: column;
}
#Shop .Entry .Intro .photo{
    width: 100%;
}
#Shop .Entry .Intro .Info{}
#Shop .Entry .Intro .Info dl{}

#Shop .Entry .Intro .Info dt{
    font-size: 14px;
}
#Shop .Entry .Intro .Info dd{}
#Shop .Entry .Intro .Info dd a{}
#Shop .Entry .Intro .Info dl + dl{}
#Shop .Entry .Intro .Info .route li{}
#Shop .Entry .Intro .Info .route li:before{}
#Shop .Entry .Intro .Info .btn{
    margin-top: 20px;
    column-gap: 10px;
}
#Shop .Entry .Intro .Info .btn li{
    flex: 1;
}

/*------------------------------------Member*/
#Member{
    background-image: url(../../images/hisgroup/member_bg_smp.webp);
}
#Member:before{}
#Member h2{
    width: var(--Width);
    margin: 0 auto;
    margin-bottom: 30px;
}
#Member h2 .sub{
    font-size: 14px;
    /* text-align: left; */
    margin-bottom: 14px;
}
#Member h2 .sub br{
    /* display: none; */
}
#Member h2 .main{
    font-size: 21px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#Member .MainTxt{
    width: var(--Width);
    margin: 0 auto;
    margin-bottom: 30px;
    font-family: inherit;
    letter-spacing: 0.5px;
    font-size: 14px;
}
#Member .MainTxt:before{
    margin-bottom: 30px;
}
#Member .CardList{
    width: var(--Width);
    flex-direction: column;
    row-gap: 40px;
}
#Member .CardList dl{}
#Member .CardList dt{
    margin-bottom: 2px;
}
#Member .CardList dd{}
#Member .CardList dd strong{
    font-size: 18px;
}


#Member .btn{
    width: var(--Width);
    margin: 0 auto;
    margin-top: 40px;
    flex-wrap: wrap;
    row-gap: 10px;
}
#Member .btn li{
    width: 100%;
}
#Member .btn a{
    padding: 22px 20px;
    font-size: 14px;
}
#Member .btn a:hover{}