@charset "UTF-8";

/*common*/

body {
  /* font-feature-settings: "palt"; */
}

.pc{
    display: inherit;
}
.sp{
    display: none;
}

.sp_footernavi_detail {
    display: none;
}

h3{
    background: #EFEFEF;
    border-left: 10px solid #72E2D4;
    font-weight: bold;
    font-size: 1.2em;
    padding: 12px;
}
h4{
    border-bottom: 1px dashed #CCC;
    padding: 0 0 15px 0;
    margin: 0 0 15px 0;
}

p.subcopy {
    padding: 15px 0;
    line-height: 1.3;
    font-size: 14px;
}

.pink{
    color: #EF4DAA;
}

.btn_base01 {
    margin: 0 auto;
    width: max-content;
}

.btn_base01 a{
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #666;
    color: #333;
    font-weight: bold;
    padding: 15px 20px;
    width: fit-content;
    margin: 0 auto;
}

.btn_base01 a span{
    color: #F36AB5;
}


.left_main {
    width: 100%;
}

/*footer*/
.sp_footernavi {
    display: none;
}


/*side*/

.side_ranking li {
    border: 1px solid #CCC;
    padding: 10px;
    margin: 0 0 15px 0;
    border-radius: 5px;
    position: relative;
}

.side_ranking li .rank-title {
    width: 42px;
    height: 40px;
    margin: 0 auto;
    font-weight: bold;
    line-height: 2.3;
    text-align: center;
    position: absolute;
    top: 0;
}

.side_ranking li .rank1 {
    background: url(/lib/img/ico_no1.svg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
}

.side_ranking li .rank2 {
    background: url(/lib/img/ico_no2.svg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #333;
}

.side_ranking li .rank3 {
    background: url(/lib/img/ico_no3.svg);
    background-repeat: no-repeat;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
}

.side_ranking li .rank4,.side_ranking li .rank5,.side_ranking li .rank6,.side_ranking li .rank7,.side_ranking li .rank8,.side_ranking li .rank9,.side_ranking li .rank10 {
    background: pink;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
}

.side_ranking li h4 {
    border: none;
    padding: 0;
    margin: 10px 0 5px 0;
    color: #F36AB5;
    font-weight: bold;
}


.side_ranking li .head {
    display: flex;
    font-size: 13px;
    font-weight: bold;
    padding: 0;
    align-items: center;
}

.side_ranking li .head .subarea {
    margin: 0 8px 0 0;
}

.side_ranking li .head .salary{
    display: flex;
    align-items: center;
}

.side_ranking li .head .salary span{
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 3px;
    font-size: 11px;
    display: block;
    margin: 0 5px 0 0;
    width: 17px;
}

.side_ranking li img {
    width: 90%;
	height:100px;
    margin: 0 auto;
    display: block;
	object-fit:cover;
}

/*トップエリアなど*/

.top_area {
    display: flex;
    justify-content: space-between;
    width: 97%;
    align-items: flex-start;
    margin: 0 auto;
}

.top_area .main-banner {
    display: none;
}

.area-map {
    position: relative;
    padding: 1rem;
    background: #fffcf8;
    border-radius: 1rem;
    margin-right: 1rem;
}


  .area-map h2 {
    background: #fff0f5;
    color: #fd9acc;
    font-weight: 600;
    text-align: center;
    font-size: 1em;
    padding: 13px 12px;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    border-radius: 13px 0 13px 0;
    box-shadow: 1px 1px 2px 0 rgba(50,50,50,0.1);
    }



/*マップ共通*/
  .bg-map {
    border-radius: 1rem;
  }

    .bg-map ul li a{
        display: block;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+62,f7f7f7+99 */
    background: #fff; /* Old browsers */
    box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.2);
    padding: 7px 22px 3px 5px;
    border-radius: 5px;
    align-items: center;
    justify-content: space-between;
    font-size: 16px;
    font-weight: bold;
        border: 1px solid #FFF;
        position: relative;
    }

    .bg-map ul li a span{
      color: #F9BBF0;
      /* position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%); */
    }




/*大阪マップ*/

.bg-map.osaka {
    background-image: url("../img/bg_map_osaka.png");
    width: 509px;
    height: 454px;
    background-size: 100%;
    position: relative;
}

.bg-map.osaka ul{

}

.bg-map.osaka ul li a span{
    top: 8px;
    }


.bg-map.osaka ul li{
    position: absolute;
}
.bg-map.osaka ul li:nth-child(1) {
    top: 111px;
    left: 212px;
}
.bg-map.osaka ul li:nth-child(2) {
    top: 280px;
    left: 212px;
}
.bg-map.osaka ul li:nth-child(3) {
    top: -8px;
    left: 194px;
}
.bg-map.osaka ul li:nth-child(4) {
    top: 227px;
    left: 195px;
}
/* .bg-map.osaka ul li:nth-child(5) {
    top: 118px;
    left: 373px;
} */
.bg-map.osaka ul li:nth-child(5) {
    top: 182px;
    left: 284px;
}
.bg-map.osaka ul li:nth-child(6) {
    top: 53px;
    left: 318px;
}
.bg-map.osaka ul li:nth-child(7) {
    top: 317px;
    left: 332px;
}
/* .bg-map.osaka ul li:nth-child(8) {
    top: 383px;
    left: 365px;
} */
.bg-map.osaka ul li:nth-child(8) {
    top: 371px;
    left: 212px;
}
.bg-map.osaka ul li:nth-child(9) {
    top: 400px;
    left: 75px;
}
.bg-map.osaka ul li:nth-child(10) {
    top: 328px;
    left: 8px;
}

.bg-map.osaka ul li p{
    display: block;
    line-height: 15px;
    font-size: 16px;
    margin: 0;
}

.bg-map.osaka ul li a{
    font-size: 13px;
}


/*東京マップ*/

.bg-map.tokyo {
  background-image: url("../img/bg_map_tokyo.png");
  width: 509px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.tokyo ul li{
    position: absolute;
}
.bg-map.tokyo ul li:nth-child(1) {
    top: 58px;
    left: 93px;
}
.bg-map.tokyo ul li:nth-child(2) {
    top: 143px;
    left: 49px;
}
.bg-map.tokyo ul li:nth-child(3) {
    top: 170px;
    left: 367px;
}
.bg-map.tokyo ul li:nth-child(4) {
    top: 211px;
    left: 28px;
}
.bg-map.tokyo ul li:nth-child(5) {
    top: 234px;
    left: 223px;
}
.bg-map.tokyo ul li:nth-child(6) {
    top: 343px;
    left: 237px;
}
.bg-map.tokyo ul li:nth-child(7) {
    top: 236px;
    left: 420px;
}
.bg-map.tokyo ul li:nth-child(8) {
    top: 276px;
    left: 41px;
}

.bg-map.tokyo ul li:nth-child(9) {
    top: 285px;
    left: 132px;
}
.bg-map.tokyo ul li:nth-child(10) {
    top: 213px;
    left: 127px;
}
.bg-map.tokyo ul li:nth-child(11) {
    top: 358px;
    left: 3px;
}
.bg-map.tokyo ul li:nth-child(12) {
    top: 360px;
    left: 388px;
}


/* .bg-map.tokyo ul li:nth-child(4) a,.bg-map.tokyo ul li:nth-child(5) a,.bg-map.tokyo ul li:nth-child(8) a,.bg-map.tokyo ul li:nth-child(9) a{
    padding: 5px 25px 5px 7px;
    font-size: 16px;
}

.bg-map.tokyo ul li:nth-child(4) span,.bg-map.tokyo ul li:nth-child(5) span,.bg-map.tokyo ul li:nth-child(8) span,.bg-map.tokyo ul li:nth-child(9) span{
    top: 5px;
} */

.bg-map.tokyo ul li p{
    display: block;
    line-height: 15px;
    font-size: 16px;
    margin: 0;
}


.bg-map.tokyo ul li a{
    font-size: 13px;
}




/*北海道マップ*/

.bg-map.hokkaido {
  background-image: url("../img/bg_map_hokkaido.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.hokkaido ul li{
    position: absolute;
}

.bg-map.hokkaido ul li a{
    padding: 5px 25px 5px 7px;
}


.bg-map.hokkaido ul li:nth-child(1) {
    top: 156px;
    left: 230px;
}
.bg-map.hokkaido ul li:nth-child(2) {
    top: 245px;
    left: 35px;
}
.bg-map.hokkaido ul li:nth-child(3) {
    top: 282px;
    left: 379px;
}
.bg-map.hokkaido ul li:nth-child(4) {
    top: 251px;
    left: 146px;
}
.bg-map.hokkaido ul li:nth-child(5) {
    top: 333px;
    left: 178px;
}
.bg-map.hokkaido ul li:nth-child(6) {
    top: 368px;
    left: 50px;
}
.bg-map.hokkaido ul li:nth-child(7) {
    top: 373px;
    left: 340px;
}




/*東北マップ*/

.bg-map.tohoku {
  background-image: url("../img/bg_map_tohoku.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.tohoku ul li{
    position: absolute;
}

.bg-map.tohoku ul li a{
    padding: 5px 25px 5px 7px;
}


.bg-map.tohoku ul li:nth-child(1) {
    top: 68px;
    left: 265px;
}
.bg-map.tohoku ul li:nth-child(2) {
    top: 174px;
    left: 207px;
}
.bg-map.tohoku ul li:nth-child(3) {
    top: 171px;
    left: 359px;
}
.bg-map.tohoku ul li:nth-child(4) {
    top: 283px;
    left: 159px;
}
.bg-map.tohoku ul li:nth-child(5) {
    top: 284px;
    left: 309px;
}
.bg-map.tohoku ul li:nth-child(6) {
    top: 370px;
    left: 173px;
}



/*関東マップ*/

.bg-map.kanto {
  background-image: url("../img/bg_map_kanto.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.kanto ul li{
    position: absolute;
}

.bg-map.kanto ul li a{
    padding: 5px 25px 5px 7px;
}


.bg-map.kanto ul li:nth-child(1) {
    top: 70px;
    left: 231px;
}
.bg-map.kanto ul li:nth-child(2) {
    top: 71px;
    left: 69px;
}
.bg-map.kanto ul li:nth-child(3) {
   top: 180px;
    left: 307px;
}
.bg-map.kanto ul li:nth-child(4) {
    top: 178px;
    left: 69px;
}
.bg-map.kanto ul li:nth-child(5) {
    top: 295px;
    left: 227px;
}
.bg-map.kanto ul li:nth-child(6) {
    top: 326px;
    left: 46px;
}
.bg-map.kanto ul li:nth-child(7) {
    top: 258px;
    left: 56px;
}




/*中部マップ*/

.bg-map.chubu {
  background-image: url("../img/bg_map_chubu.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.chubu ul li{
    position: absolute;
}

.bg-map.chubu ul li a{
    padding: 5px 25px 5px 7px;
}


.bg-map.chubu ul li:nth-child(1) {
    top: 66px;
    left: 104px;
}
.bg-map.chubu ul li:nth-child(2) {
    top: 109px;
    left: 339px;
}
.bg-map.chubu ul li:nth-child(3) {
   top: 151px;
    left: 20px;
}
.bg-map.chubu ul li:nth-child(4) {
    top: 131px;
    left: 173px;
}
.bg-map.chubu ul li:nth-child(5) {
    top: 236px;
    left: 134px;
}
.bg-map.chubu ul li:nth-child(6) {
    top: 201px;
    left: 245px;
}
.bg-map.chubu ul li:nth-child(7) {
    top: 280px;
    left: 285px;
}
.bg-map.chubu ul li:nth-child(8) {
    top: 359px;
    left: 222px;
}
.bg-map.chubu ul li:nth-child(9) {
    top: 335px;
    left: 74px;
}




/*名古屋マップ*/

.bg-map.nagoya {
  background-image: url("../img/bg_map_nagoya.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.nagoya ul li{
    position: absolute;
}

.bg-map.nagoya ul li a{
    padding: 5px 25px 5px 7px;
}


.bg-map.nagoya ul li:nth-child(1) {
    top: 152px;
    left: 57px;
}
.bg-map.nagoya ul li:nth-child(2) {
    top: 197px;
    left: 204px;
}
.bg-map.nagoya ul li:nth-child(3) {
    top: 65px;
    left: 38px;
}
.bg-map.nagoya ul li:nth-child(4) {
    top: 274px;
    left: 148px;
}
.bg-map.nagoya ul li:nth-child(5) {
    top: 357px;
    left: 110px;
}



/*中四国マップ*/

.bg-map.chugoku {
  background-image: url("../img/bg_map_chugoku.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.chugoku ul li{
    position: absolute;
}

.bg-map.chugoku ul li a{
    padding: 5px 25px 5px 7px;
}

/* .bg-map.chugoku ul li span{
    top: 2px;
} */

.bg-map.chugoku ul li:nth-child(1) {
    top: 52px;
    left: 190px;
}
.bg-map.chugoku ul li:nth-child(2) {
    top: 38px;
    left: 374px;
}
.bg-map.chugoku ul li:nth-child(3) {
    top: 140px;
    left: 358px;
}
.bg-map.chugoku ul li:nth-child(4) {
    top: 146px;
    left: 217px;
}
.bg-map.chugoku ul li:nth-child(5) {
    top: 234px;
    left: 355px;
}
.bg-map.chugoku ul li:nth-child(6) {
    top: 239px;
    left: 202px;
}
.bg-map.chugoku ul li:nth-child(7) {
    top: 319px;
    left: 359px;
}
.bg-map.chugoku ul li:nth-child(8) {
    top: 335px;
    left: 222px;
}





/*九州マップ*/

.bg-map.kyusyu {
  background-image: url("../img/bg_map_kyusyu.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  position: relative;
}

.bg-map.kyusyu ul li{
    position: absolute;
}

.bg-map.kyusyu ul li a{
    padding: 5px 25px 5px 7px;
}

.bg-map.kyusyu ul li:nth-child(1) {
    top: 0;
    left: 346px;
}
.bg-map.kyusyu ul li:nth-child(2) {
    top: 13px;
    left: 244px;
}
.bg-map.kyusyu ul li:nth-child(3) {
    top: 83px;
    left: 267px;
}

.bg-map.kyusyu ul li:nth-child(4) {
    top: 48px;
    left: 148px;
}
.bg-map.kyusyu ul li:nth-child(5) {
    top: 131px;
    left: 98px;
}
.bg-map.kyusyu ul li:nth-child(6) {
    top: 125px;
    left: 399px;

}
.bg-map.kyusyu ul li:nth-child(7) {
    top: 170px;
    left: 234px;
}

.bg-map.kyusyu ul li:nth-child(8) {
    top: 242px;
    left: 310px;
}


.bg-map.kyusyu ul li:nth-child(9) {
    top: 288px;
    left: 165px;
}

.bg-map.kyusyu ul li:nth-child(10) {
    top: 361px;
    left: 2px;
}



/*関西マップ*/


.bg-map.kansai {
  background-image: url("../img/bg_map_kansai.png");
  width: 510px;
  height: 454px;
  background-size: 100%;
  /* position: relative; */
}

.bg-map.kansai ul li {
    position: absolute;
}

.bg-map.kansai ul li:nth-child(1) {
   top: 120px;
   left: 265px;
}
.bg-map.kansai ul li:nth-child(2) {
    top: 100px;
    left: 138px
}
.bg-map.kansai ul li:nth-child(3) {
    top: 140px;
    left: 395px;
}

.bg-map.kansai ul li:nth-child(4) {
    top: 358px;
    left: 146px;
}
.bg-map.kansai ul li:nth-child(5) {
    top: 300px;
    left: 269px;
}
.bg-map.kansai ul li:nth-child(6) {
    top: 280px;
    left: 390px;

}
.bg-map.kansai ul li:nth-child(7) {
    top: 205px;
    left: 215px;
}

.bg-map ul li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  text-align: center;
  line-height: 1.2;
}
.bg-map ul li a:before {
  content: "";
  display: block;
  width: 0.5rem;
  height: 54px;
  border-radius: 3px 0 0 3px;
  margin-right: 0.5rem;
}
.bg-map.kansai ul li a,
.bg-map.osaka ul li a {
  border: 2px solid #ffc0cc;
  padding: 0;
}
.bg-map.kansai ul li a:before,
.bg-map.osaka ul li a:before {
  background: #ffc0cc;
}
.bg-map.kansai ul li a span,
.bg-map.osaka ul li a span {
  color: #ffc0cc;
}
.bg-map.kanto ul li a,
.bg-map.tokyo ul li a {
  border: 2px solid #abdfef;
  padding: 0;
}
.bg-map.kanto ul li a:before,
.bg-map.tokyo ul li a:before {
  background: #abdfef;
}
.bg-map.kanto ul li a span,
.bg-map.tokyo ul li a span {
  color: #abdfef;
}
.bg-map.hokkaido ul li a {
  border: 2px solid #bbceff;
  padding: 0;
}
.bg-map.hokkaido ul li a:before {
  background: #bbceff;
}
.bg-map.hokkaido ul li a span {
  color: #bbceff;
}
.bg-map.kyusyu ul li a {
  border: 2px solid #eac2a4;
  padding: 0;
}
.bg-map.kyusyu ul li a:before {
  background: #eac2a4;
}
.bg-map.kyusyu ul li a span {
  color: #eac2a4;
}
.bg-map.chugoku ul li a {
  border: 2px solid #ffb5a9;
  padding: 0;
}
.bg-map.chugoku ul li a:before {
  background: #ffb5a9;
}
.bg-map.chugoku ul li a span {
  color: #ffb5a9;
}
.bg-map.chubu ul li a,
.bg-map.nagoya ul li a {
  border: 2px solid #ffe5c5;
  padding: 0;
}
.bg-map.chubu ul li a:before,
.bg-map.nagoya ul li a:before {
  background: #ffe5c5;
}
.bg-map.chubu ul li a span,
.bg-map.nagoya ul li a span {
  color: #ffe5c5;
}
.bg-map.tohoku ul li a {
  border: 2px solid #bbceff;
  padding: 0;
}
.bg-map.tohoku ul li a:before {
  background: #bbceff;
}
.bg-map.tohoku ul li a span {
  color: #bbceff;
}

/*マップ横*/
.box_right{
    width:630px;
    display: flex;
    flex-wrap: wrap;
}

.box_right .main-banner {
    margin-bottom: 10px;
    display: block;
}

.top_read {
   padding: 0 15px 15px;
   order: 2;
}

.top_read h2 {
    font-size: 22px;
    text-align: center;
    color: #EF4DAA;
    line-height: 1.3;
    font-weight: bold;
}


.top_read h2 span {
    font-size: 30px;
    text-align: center;
    color: #EF4DAA;
    display: block;
}

.top_read p {
    line-height: 1.4;
    font-size: 14px;
    margin: 9px 0 0;
}


.banner_box ul {
    display: flex;
    justify-content: space-between;
}

.banner_box ul li {
    width: 49%;
    margin: 7px 0;
}




/*トップ検索*/

.top_banner_search {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    order: 3;
}

.top_banner_search .main-banner {
    width: 38%;
}

.top_banner_search .search {
    width: 83%;
    margin: 0 auto;
}

.top_banner_search .search h3 {
    text-align: center;
    padding: 0 0 5px 0;
    margin: 0 auto 12px auto;
    width: max-content;
}

.top_banner_search .search h3 {
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: block;
  top:0;
    background: none;
    border: none;
    font-size: 16px;
}

.top_banner_search .search h3:before, .top_banner_search .search h3:after {
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.top_banner_search .search h3:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
.top_banner_search .search h3:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}

.top_banner_search .main-search-box {
    justify-content: space-between;
}

.top_banner_search .search a{
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f36ab5+1,e04081+99 */
background: #f36ab5; /* Old browsers */
background: -moz-linear-gradient(top,  #f36ab5 1%, #e04081 99%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  #f36ab5 1%,#e04081 99%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  #f36ab5 1%,#e04081 99%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f36ab5', endColorstr='#e04081',GradientType=0 ); /* IE6-9 */;
    color: #FFF;
    font-weight: bold;
    font-size: 16px;
    display: flex;
    align-items: center;
    padding: 15px 10px;
    border-radius: 6px;
        cursor: pointer;
}

.top_banner_search .search a:hover{
    color: pink;
}

.top_banner_search .search a img{
  filter: brightness(100);
    width: auto;
   height: 22px;
    margin: 0 5px 0 0;
}


.banner_box.pc {
    margin: 0 0 20px 0;
}




/*下層検索*/

#salary-form .modal-content h3, #area-form .modal-content h3, #place-form .modal-content h3{
     position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: block;
  top:0;
    background: none;
    border: none;
    font-size: 16px;
    width: max-content;
    margin: 0 auto 10px;
}

#salary-form .modal-content h3:before, #area-form .modal-content h3:before, #place-form .modal-content h3:before,#salary-form .modal-content h3:after, #area-form .modal-content h3:after, #place-form .modal-content h3:after{
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#salary-form .modal-content h3:before, #area-form .modal-content h3:before, #place-form .modal-content h3:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
#salary-form .modal-content h3:after, #area-form .modal-content h3:after, #place-form .modal-content h3:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}
/*店舗リスト*/
.shop_list li {
	margin: 0 0 20px 0;
	padding: 15px;
	border-radius: 10px;
	box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.42);
	width:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}

.shop_list li p.btn_detail.pc {
    position: absolute;
    right: 63px;
    top: 16px;
}


.shop_list li .head {
        display: flex;
    font-size: 0.9em;
    align-items: baseline;
    font-weight: bold;
    width: 100%;
    flex-wrap: wrap;
}

.shop_list li .head .station{
        margin: 0 0 10px 0;
    display: block;
}

.shop_list li .head .salary {
    display: flex;
    align-items: center;
    margin: 0 0 0 10px;
}

.shop_list li .head .salary span{
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 4px;
    font-size: 13px;
    display: block;
    margin: 0 5px 0 0;
}

.shop_list li .head time {
    margin: 0;
    width: 100%;
    text-align: left;
    font-weight: normal;
}

.shop_list li .head .btn_detail a{
        background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: space-between;
    padding: 10px 5px 10px 15px;
    border-radius: 7px;
    margin: -6px 0 0 20px;
    align-items: center;
    width: 120px;
}



.shop_list li h4{
    width: 100%;
}
.shop_list li h4 a {
    font-size: 1.6em;
    padding: 0;
    color: #F36AB5;
    display: block;
    font-weight: bold;
}

.shop_list li .left_box {
    width: 40%;
}

.shop_list li .left_box figure {
    width: 100%;
    height: calc(3/4*100%);
    overflow:hidden;
}
.shop_list li .left_box figure.img-main {
    height:auto;
	margin-bottom:0.5rem;
}
.shop_list li .left_box figure.img-main a {
	background-position:center;
	background-size:contain;
	background-repeat: no-repeat;
    display:block;
	width:100%;
	padding-top: calc(3/7*100%);
}
.shop_list li .left_box figure img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.shop_list li .left_box figcaption p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.1;
}

.shop_list li .right_box {
    width: 58%;
}

.shop_list li .right_box .tag {
    display: flex;
    flex-wrap: wrap;
}

.shop_list li .right_box .tag p {
    padding: 8px;
    font-size: 14px;
    background: papayawhip;
    margin: 0 5px 5px 0;
    font-weight: bold;
    border: 1px solid burlywood;
}

.shop_list li .right_box dl{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 14px;
    margin: 7px 0 0 0;
}

.shop_list li .right_box dl dt{
        width: 30%;
    background: #EFEFEF;
    padding: 5px 10px;
    margin: 0 0 3px 0;
}

.shop_list li .right_box dl dd{
    width: 68%;
     padding: 5px 0;
}

.shop_list li .left_box figure.topics {
    width: 100%;
    height: auto;
}
.shop_list li .left_box figure.topics a {
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
	display:block;
	padding-top:calc(3/4*100%);
}

/*shop_result*/

.shop_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.shop_inner .shop_head {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

.shop_inner .shop_head span {
       display: block;
    width: auto;
    font-size: 14px;
    padding: 0 10px 0 0;
    font-weight: bold;
}

.shop_inner h3.shop-name {
    background: none;
    border: none;
    padding: 10px 200px 14px 0;
    font-weight: bold;
    width: 100%;
}

.shop_inner h3.shop-name a {
    font-weight: bold;
    font-size: 26px;
    color: #F36AB5;
    display: block;
}

.shop_inner h4{
    width: 100%;
    padding: 0 200px 10px 0;
}

.shop_inner .shop-image {
    width: 45%;
}

.shop_inner .shop-image a img {
    object-fit: cover;
}

.shop_inner .shop-image ul{
    display: flex;
    justify-content: space-between;
    padding: 10px 0 0;
}

.shop_inner .shop-image ul li{
    width: 30%;
}

.shop_inner .shop-desc ul.shop-vide {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 13px;
}

.shop_inner .shop-desc ul.shop-vide li {
    width: 31%;
    border: 1px solid palegoldenrod;
    background: cornsilk;
    padding: 5px 0;
    text-align: center;
    margin: 0 2% 2% 0;
}

.shop_inner .shop-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    overflow: hidden;
}


.shop_inner ul.btn_set {
    position: absolute;
    right: 56px;
    top: 11px;
    width: 150px;
}

.shop_inner ul.btn_set a{
background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: space-between;
    padding: 8px 12px;
    border-radius: 7px;
    margin: 0 0 10px 0;
    align-items: center;
    font-size: 15px;
    font-weight: bold;
}

.btn-keep.flag {
    position: absolute;
    right: -8px;
    top: 2px;
}
.btn-keep.flag p {
	display:none;
    position: absolute;
    top: 23px;
    right: 8px;
    font-size: 12px;
    color: #FFF;
    font-weight: bold;
}

.btn-keep.flag span{
        font-size: 68px;
    color: #FD9ACC;
}


.search-area .shop-box.free .shop-vide {
    display: none;
}


.shop-text br {
    display: none;
}

.shop-desc dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.shop-desc dt {
    background: #EFEFEF;
    padding: 5px;
    font-size: 14px;
    width: 20%;
    margin: 0 0 5px 0;
    text-align: center;
}

.shop-desc dd {
    width: 77%;
    font-size: 14px;
}



/*トップ　占いティッカー*/


article.horoscope-ticker {
    background: url(../img/horoscope/bg.jpg);
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    padding: 10px;
    border-radius: 14px;
    overflow: hidden;
    height: 70px;
    box-sizing: border-box;
    position: relative;
}


article.horoscope-ticker h3 {
    width: 100px;
    padding: 0;
    background: none;
    border: none;
    margin: 0 10px;
}

article.horoscope-ticker .date {
    width: 170px;
    font-size: 13px;
    background: #FFFFC2;
    border-radius: 10px 0 0 10px;
    text-align: center;
    padding: 6px 10px;
    font-weight: bold;
    height: 49px;
}

article.horoscope-ticker .date span{
    display: block;
    font-size: 12px;
}

article.horoscope-ticker div#ticker {
    width: 560px;
    background: #FFF;
    border-radius: 0 10px 10px 0;
    padding: 0;
    height: 49px !important;
    overflow: hidden;
}

article.horoscope-ticker div#ticker ul{
    overflow: hidden;
}

article.horoscope-ticker div#ticker li {
    display: flex;
    align-items: center;

}

article.horoscope-ticker div#ticker li h4{
    border: none;
    padding: 0;
    margin: 0 10px 0 0;
}

article.horoscope-ticker div#ticker li p{
    color: #FFD67C;
    margin: 0 10px;
}

article.horoscope-ticker div#ticker li p span{
    color: #CCC;
}
article.horoscope-ticker p.btn_more {
    width: 142px;
    margin: 0;
    position: absolute;
    right: 6px;
    top: 9px;
}


/*トップ　占いメインエリア*/

article#horoscope{
    background: url(../img/horoscope/bg.jpg);
    border-radius: 15px;
}

article#horoscope .horoscope-head{
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    width: 96%;
    margin: auto;
    padding: 20px 7px;
}

article#horoscope .horoscope-head h3{
    padding: 0;
    background: none;
    border: none;
    width: 430px;
}

article#horoscope .horoscope-head .date{
    background: #FFFFC2;
    border: 2px solid #FFD67C;
    padding: 8px 10px 8px 20px;
    border-radius: 7px;
    font-size: 18px;
    font-weight: bold;
    width: 348px;
}

article#horoscope .horoscope-head .date span{
    font-size: 15px;
    margin: 0 2px;
}

article#horoscope .horoscope-head .ico{
    position: absolute;
    right: 10px;
    top: 10px;
    width: 48px;
}

.horoscope-main ul {
    justify-content: space-between;
    width: 95%;
    margin: 0 auto;
    align-items: flex-start;
}

.horoscope-main ul li{
    width: 49%;
    background: #FFF;
    border-radius: 10px;
    border: 2px solid pink;
    padding: 10px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin: 0 0 20px 0;
}

.horoscope-main ul li h4 {
    width: 25%;
    border: none;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding: 0;
    margin: 0;
}

.horoscope-main ul li h4 img {
    width: 100%;
    display: block;
    margin: 0 auto 9px auto;
}

.horoscope-main ul li h4 span {
    font-size: 12px;
    display: block;
    padding: 10px 0 0;
}

.horoscope-main ul li h4 span{
    font-size: 12px;
    display: block;
}

.horoscope-main ul li .data {
    width: 70%;
}

.horoscope-main ul li .data .text {
    font-size: 13px;
}

.horoscope-main ul li .data .text div {
    width: 100%;
    display: flex;
    padding: 10px 0 0 0;
    align-items: center;
    font-weight: bold;
}

.horoscope-main ul li .data .text div p{
    color: #FFD67C;
    margin:0 8px 0 0;
    font-size: 15px;
}

.horoscope-main ul li .data .text div p span{
    color: #CCC;
}


.horoscope-main ul li h4 img.ico_01 {
    margin: -20px 0 10px 0px !important;
}

.horoscope-main ul li h4 img.ico_02 {
    margin: -15px auto 10px auto !important;
    width: 90% !important;
}

.horoscope-main ul li h4 img.ico_03 {
    width: 116% !important;
    margin: 6px 0 10px -15px !important;
}

.horoscope-main ul li h4 img.ico_04 {
    width: 114% !important;
    margin: -13px auto 8px -14px !important;
}

img.ico_05 {
    margin: -20px auto 10px auto !important;
}

img.ico_06 {
    margin: -20px auto 10px auto !important;
}

img.ico_08 {
    margin: -20px auto 10px auto !important;
}

img.ico_10 {
    margin: -20px auto 6px auto !important;
}

img.ico_11 {
    margin: -20px auto 10px auto !important;
    width:80% !important;
}

img.ico_12 {
    margin: -4px auto 8px auto !important;
    width: 100% !important;
}


/*top new arrival*/

.top_newarrival {
    background-image: url(../img/kuma04.svg);
    background-repeat: no-repeat;
    background-size: 6em;
    background-position: top 2em right 1em;
}

.top_newarrival.top{
    background: none;
}

.top_newarrival h2 {
background: url('../img/txt-poststart.svg') no-repeat;
    background-size: 4em;
    background-position: top 2.3em left;
    padding: 1em 0 1.6em;
}

.top_newarrival ul {
    justify-content: space-between;
    align-items: inherit;
}

.top_newarrival li {
    width: 48%;
    margin: 0 0 20px 0;
    margin: 0 0 20px 0;
    border: 1px dashed #CCC;
    padding: 10px;
    position: relative;
}

.top_newarrival li p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.3;
}
.top_newarrival li img {
    height: 170px;
    object-fit: cover;
}

.top_newarrival .head {
        display: flex;
    font-size: 0.9em;
    align-items: center;
    font-weight: bold;
    width: 100%;
}

.top_newarrival .head .station{
    margin: 0 10px 0 0;
}

.top_newarrival .head .salary {
    display: flex;
    align-items: center;
}

.top_newarrival .head .salary span{
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 4px;
    font-size: 13px;
    display: block;
    margin: 0 5px 0 0;
    width: 24px;
    text-align: center;
}

.top_newarrival li h4{
    font-size: 1.1em;
    padding: 13px 0;
    display: block;
    width: 100%;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.3;
}

.top_newarrival li h4 a{
    color: #F36AB5;
}

.top_newarrival li .btn_detail{
    position: absolute;
    right: 63px;
    top: 16px;
}

.top_newarrival li .btn_detail a {
    background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: space-between;
    padding: 10px 5px 10px 15px;
    border-radius: 7px;
    margin: -6px 0 0 20px;
    align-items: center;
    width: 120px;
}


/*top tag*/
.tag-links {
    display: flex;
    align-items: center;
}

.tag-links h4{
    margin: 0 10px 0 0;
}

.tag-links ul{
    display: flex;
}

.tag-links li{
   width: 70px;
    margin: 0 5px;
}



/*top column*/

.top_column{
    background-image: url(../img/kuma09.svg);
    background-repeat: no-repeat;
    background-size: 5.6em;
    background-position: top 1em right 1em;
}

.top_column.top{
    background: none;
}

.top_column h2{
        background: url(../img/txt-column.svg) no-repeat;
    background-size: 2.8em;
    background-position: top 2.3em left;
    margin-bottom: 0.5em;
}
.top_column ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
	align-items:stretch;
    padding: 10px 0 30px 0;
}

.top_column li {
    width: 31%;
    margin: 10px 20px 25px 0;
}

.top_column li img{
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.top_column li p {
    padding: 0px 0 10px 0;
    font-weight: bold;
    line-height: 1.4;
}

.top_column li figcaption{
    overflow: hidden;
}


.writer {
    border: 1px solid #CCC;
    padding: 25px 50px;
    text-align: center;
    width: 100%;
    margin: 45px auto 0;
    background: aliceblue;
    display: flex;
}

.writer .image{
    width: 140px;
    height: 140px;
    overflow: hidden;
    margin: 0 auto;
    border: 1px solid #CCC;
    border-radius: 50%;
    text-align: center;
    position: relative;
    background: #FFF;
}

.writer .image img {
    width: 88%;
    height: auto;
    margin: 0 auto;
    position: absolute;
    left: 5px;
    top: 6px;
}

.writer p{
    font-size: 12px;
}

.writer .name{
    font-size: 16px;
    font-weight: bold;
    padding: 10px 0 20px 0;
}

.writer .txt{
    font-size: 14px;
}




/*sitemap*/


.sitemap-box {
    width: 800px;
    text-align: left;
    margin: 0 auto;
}


.sitemap .home {
    text-align: left;
    padding: 20px 0;
}

.sitemap h3 {
    text-align: left;
        background: lavenderblush;
    padding: 10px;

}

.sitemap ul{
    display: block;
    margin: 0 0 10px 0;
}

.sitemap li{
    width: 100%;
    padding: 5px 0;
    margin: 0 0 0 15px;
}

.sitemap li ul{
    display: flex;
}

.sitemap li ul li {
    width: max-content;
    border-bottom: 1px dashed #CCC;
}

.sitemap a.nav-tit {
    font-weight: bold;
}

.sitemap ul.contents_link li {
    width: max-content;
    border-bottom: 1px dashed #CCC;
}



.sitemap ul.area li {
    width: max-content;
    border-bottom: 1px dashed #CCC;
}



.foot-area-text p {
    line-height: 1.4;
    font-size: 14px;
    padding: 0 0 30px 0;
}



.footer_banner {
    width: 300px;
    margin: 0 auto 20px;
}

.foot-nav-area {
    width: 1200px;
    margin: 0 auto;
}

.foot-nav-area ul {
    width: 90%;
    margin: 24px auto;
}

.foot-nav-area li{
    margin: 10px;
}

.foot-nav-area li a {
    display: block;
    padding: 15px;
    width: 195px;
    border: 1px solid #CCC;
    border-radius: 7px;
}

.btn-keep.flag span {
	font-size: 68px;
	color: #FD9ACC;
	display: inline-block;
	position: relative;
}
.btn-keep.flag span:after {
	content: "KEEP";
	display: inline-block;
	font-size: 0.75rem;
	color: #fff;
	position: absolute;
	left: 50%;
	top: 40%;
	transform: translate(-50%,-50%);
}



@media screen and (max-width: 1199px) {

    /*=====================================タブレット=====================================*/

    .top_area {
    display: block;
}
    .area-map {
    position: relative;
    margin: 0 auto;
    width: max-content;
}

    .box_right {
    width: 90%;
    display: flex;
    flex-wrap: wrap;
    margin: 20px auto;
}


    .kansai .box_right {
    width: 88%;
    display: block;
    flex-wrap: wrap;
    margin: 20px auto;
    justify-content: space-around;
}

    .kansai .top_read {
    padding: 0;
    order: 2;
    width: 100%;
}
    .kansai .top_banner_search {
    width: 78%;
    margin: 22px auto;
}

    .sidebanner{
        display: flex;
        align-items: baseline;
    justify-content: space-between;
    }

    .sidebanner a {
    width: 48%;
}


    .sitemap-box {
    width: 100%;
    text-align: left;
    margin: 0 auto;
}


.foot-nav-area {
    width: 100%;
    margin: 0 auto;
}

}

@media screen and (max-width: 767px) {
/*=====================================スマホ縦=====================================*/
/*common*/

.pc{
    display: none;
}
.sp{
    display: inherit;
}

.btn_base01 a {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #666;
    color: #333;
    font-weight: bold;
    padding: 10px 20px;
    width: fit-content;
    margin: 0 auto;
}


/*footer*/
.sp_footernavi {
    position: fixed;
    bottom: 0;
    display: block;
        width: 100%;
}
.sp_footernavi ul {
    background: #FD9ACC;
    display: flex;
    justify-content: space-between;
}

.sp_footernavi ul li{
    width: 33.333333%;
    text-align: center;
    border-right: 1px solid #C44588;
}

    .sp_footernavi ul li:last-child{
    border-right: none;
}
.sp_footernavi ul li a{
    display: block;
    text-align: center;
    color: #BF457F !important;
    font-weight: bold;
    font-size: 11px;
    padding: 8px 0;
}

    .sp_footernavi ul li a span {
    color: #FFF;
    display: block;
    font-size: 27px;
}
    .sp_footernavi ul li img{
        width: 100%;
    display: block;
    height: 22px;
        margin: 0 0 4px 0;
    }


/*footer(detail)*/
.sp_footernavi_detail {
    position: fixed;
    bottom: 0;
    display: block;
        width: 100%;
}
.sp_footernavi_detail ul {
    background: pink;
    display: flex;
    justify-content: space-between;
}

.sp_footernavi_detail ul li{
    width: 20%;
    text-align: center;
    border-right: 1px solid #fff;
	padding-bottom:1rem;
}

    .sp_footernavi_detail ul li:last-child{
    border-right: none;
}
.sp_footernavi_detail ul li a{
    display: block;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 11px;
    padding: 8px 0;
	text-shadow: 1px 1px 2px #b0b0b0;
}

    .sp_footernavi_detail ul li a span {
    color: #FFF;
    display: block;
    font-size: 27px;
}
    .sp_footernavi_detail ul li img{
        width: 100%;
    display: block;
    height: 22px;
        margin: 0 0 4px 0;
    }

/*トップエリアなど*/
.top_area {
    display: block;
}

    .top_area .main-banner {
    display: block;
    width: 93%;
    margin: 0 auto 4px auto;
    font-size: 12px;
}

.area-map {
    width: 100%;
 }
.area-map h2 {
     background: #fff0f5;
    text-align: center;
    font-size: 1em;
    padding: 7px;
     position: relative;
     left: auto;
    border-radius: 0;
}

    /*マップ共通（スマホは全部同じ）*/
.bg-map {
    background-image: none!important;
    width: 100% !important;
    height: auto !important;
    background-size: cover !important;
    border-radius: 0;
    padding: 1rem 0;
}
.bg-map.osaka ul li p{
    display: inherit;
}
.bg-map ul li a{
    height: 42px;
    display: flex;
    background: #fff;
    /* background: -moz-linear-gradient(top, #ffffff 62%, #f7f7f7 99%);
    background: -webkit-linear-gradient(top, #ffffff 62%,#f7f7f7 99%);
    background: linear-gradient(to bottom, #ffffff 62%,#f7f7f7 99%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f7f7f7',GradientType=0 ); */
    box-shadow: 1px 1px 2px 1px rgba(0,0,0,0.2);
    padding: 7px 5px;
    border-radius: 5px;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid #fff;
    position: relative;
}
.bg-map ul li a:before {
  height: 42px;
  margin-right: 0;
  position: absolute;
  left: 0;
}

.bg-map ul li a span {
    color: #f9bbf0;
    /* position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%); */
    position: absolute;
    right: 0;
}

.bg-map ul {
    justify-content: space-between;
    width: 100%;
    position: relative;
}

.bg-map ul li {
    width: 49%;
    margin: 3px 0;
    font-weight: bold;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
}

/*マップ横*/

    .box_right {
    width: 100%;
    margin: 20px auto 5px;
}
    .box_right .main-banner {
    display: none;
}

    .top_read {
   padding: 0 15px 0;
        background: url(../img/kuma01.svg) no-repeat;
    background-size: 5.5em;
            background-position: top 0 right 1.5em;
}
    .top_read h2 {
    font-size: 15px;
    text-align: center;
    color: #EF4DAA;
}


.top_read h2 span {
    font-size: 20px;
    text-align: center;
    color: #EF4DAA;
}

.banner_box ul li {
    width: 88%;
    margin: 7px auto;
}



    .kansai .box_right {
    width: 92%;
    display: block;
    flex-wrap: wrap;
    margin: 20px auto;
    justify-content: space-around;
}

    .kansai .top_banner_search {
    width: 100%;
    margin: 22px auto;
}



/*トップ検索*/

.top_banner_search {
    display: block;
    justify-content: space-between;
    align-items: center;
    width: 90%;
    margin: 0 auto 15px;
}
.top_banner_search .main-banner {
    width: 95%;
    margin: 15px auto;
}
.top_banner_search .search {
    width: 100%;
}

.top_banner_search .search h3 {
    margin: 20px auto 12px;
}
.top_banner_search .search a img {
    filter: brightness(100);
    width: auto;
    height: 18px;
    margin: 0 5px 0 0;
}
.top_banner_search .search a {
    font-size: 14px;
    padding: 13px 5px;
    border-radius: 6px;
    line-height: 1;
    margin: 0 3px;
}


/*トップ　占い　ティッカー*/

article.horoscope-ticker {
        background: url(../img/horoscope/bg.jpg);
    display: flex;
    padding: 14px 8px;
    border-radius: 6px;
    overflow: hidden;
    height: auto;
    box-sizing: border-box;
    position: relative;
    justify-content: space-between;
}

    article.horoscope-ticker h3 {
    width: 26%;
    padding: 0;
    background: none;
    border: none;
    margin: 0 10px;
}

    article.horoscope-ticker .date {
    width: 67%;
    font-size: 12px;
    background: #FFFFC2;
    border-radius: 7px;
    text-align: center;
    padding: 6px 7px;
    font-weight: bold;
    height: auto;
}

    article.horoscope-ticker .date span {
    display: inline;
    font-size: 12px;
}

    article.horoscope-ticker div#ticker {
    width: 100%;
    background: #FFF;
    border-radius:7px;
    padding: 0;
    height: 40px !important;
    overflow: hidden;
    font-size: 13px;
    margin: 10px 0 0 0;
}

    article.horoscope-ticker div#ticker li{
    }

    article.horoscope-ticker div#ticker li h4{
        font-weight: bold;
        font-size: 15px;
    }

    article.horoscope-ticker div#ticker li p{
        margin: 0 4px;
    }


    article.horoscope-ticker p.btn_more {
    position: relative;
    right: auto;
    top: auto;
    width: 75%;
    background: pink;
    text-align: center;
    padding: 7px;
    margin: 10px auto 0;
    border-radius: 7px;
    font-weight: bold;
}

    article.horoscope-ticker p.btn_more a{
        color: #FFF;
    }



    /*トップ占い　メイン*/


    article#horoscope .horoscope-head {
    display: block;
    justify-content: space-between;
    align-items: center;
    position: relative;
    width: 94%;
    margin: auto;
    padding: 14px 7px;
}

    article#horoscope .horoscope-head h3 {
    padding: 0;
    background: none;
    border: none;
    width: 82%;
}

    article#horoscope .horoscope-head .date {
    background: #FFFFC2;
    border: 2px solid #FFD67C;
    padding: 5px 10px;
    border-radius: 7px;
    font-size: 15px;
    font-weight: bold;
    width: 100%;
    margin: 5px 0 0;
}

    article#horoscope .horoscope-head .ico {
    position: absolute;
    right: 6px;
    top: 16px;
    width: 54px;
}

    .horoscope-main ul {

    width: 95%;
    margin: 0 auto;
    display: block;
}

    .horoscope-main ul li {
    width: 100%;
    position: relative;
    padding: 10px 10px 35px 10px;
}

    .horoscope-main ul li .data .text div {
    position: absolute;
    left: 10px;
    bottom: 10px;
}

 /*top tag*/
.tag-links {
    display: block;
}

.tag-links h4{
    margin: 0 0 10px 0;
}

.tag-links ul{
    display: flex;
    justify-content: center;
}

.tag-links li{
   width: 21%;
    margin: 0 5px;
}




/*店舗リスト*/
.shop_list li {
    margin: 0 0 20px 0;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.42);
    display: block;
}
.shop_list li .head {
    display: flex;
    font-size: 0.9em;
    align-items: baseline;
    font-weight: bold;
    width: 100%;
    flex-wrap: wrap;
}

.shop_list li .head .station{
    margin: 4px 10px 10px 0;
}

.shop_list li .head .salary {
    display: flex;
    align-items: center;
    margin: 0;
}

.shop_list li .head time {
    margin: 0 0 5px 0;
    width: 100%;
    text-align: left;
    font-weight: normal;
    border-bottom: 1px dashed #CCC;
    padding: 0 0 5px 0;
}

.shop_list li .head .btn_detail a{
    background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: space-between;
    padding: 10px 15px;
    border-radius: 0 0 7px 7px;
    margin: -15px 0 0 20px;
    align-items: center;
}

.shop_list li .head .salary span{
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 4px;
    font-size: 13px;
    display: block;
    margin: 0 5px 0 0;
}

.shop_list li h4{
    width: 100%;
}
.shop_list li h4 a {
    font-size: 1.6em;
    padding: 8px 0 0;
    color: #F36AB5;
    display: block;
}

.shop_list li .left_box {
    width: 100%;
    display: flex;
	flex-wrap:wrap;
    justify-content: space-between;
}
    .shop_list li .left_box figure{
        width: 100%;
    }

.shop_list li .left_box figure img {
    width: 100%;
    height: 80px;
    object-fit: cover;
}
    .shop_list li .left_box figcaption{
        width: 100%;
    }

.shop_list li .left_box figcaption p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.3;
}

.shop_list li .right_box {
    width: 100%;
}

.shop_list li .right_box .tag {
    display: flex;
    flex-wrap: wrap;
}

.shop_list li .right_box .tag p {
    padding: 6px;
    font-size: 12px;
    background: papayawhip;
    margin: 0 5px 5px 0;
    font-weight: bold;
    border: 1px solid burlywood;
}

.shop_list li .right_box dl{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 13px;
    margin: 7px 0 0 0;
}

.shop_list li .right_box dl dt{
        width: 28%;
    background: #EFEFEF;
    padding: 5px 10px;
    margin: 0 0 3px 0;
}

.shop_list li .right_box dl dd{
    width: 70%;
     padding: 5px 0;
}

.shop_list li .btn_detail.sp a{
    background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: center;
    padding: 7px 15px;
    border-radius: 4px;
    margin: 6px auto 0;
    align-items: center;
}


/*shop_result*/

    .shop_inner .shop_head span {
    display: block;
    width: 91%;
    font-size: 12px;
    padding: 0 10px 0 0;
}

    .shop_inner h3.shop-name {
    background: none;
    border: none;
    padding: 7px 0;
    font-weight: bold;
}

.shop_inner h3.shop-name a {
    font-weight: bold;
    font-size: 22px;
    color: #F36AB5;
    display: block;
}

.shop_inner h4.shop-title {
    padding: 0;
    margin: 0 0 0px;
    border: none;
}

.shop_inner .shop-image {
    width: 100%;
}
.shop_inner .shop-image figure {
    margin: 7px 0 7px 0;
}

.shop_inner .shop-image a img {
    object-fit: cover;
    width: 100%;
}

.shop_inner .shop-image ul {
    display: none;
}


.shop_inner .shop-text {
    /*display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;*/
    overflow: hidden;
    font-size: 12px;
    line-height: 1.2;
    margin: 0 0 10px 0;
	height:3.5rem;
}
.shop_inner .shop-desc dl {
    margin: 5px 0;
}

.shop_inner .shop-desc dt {
    background: #EFEFEF;
    padding: 5px;
    font-size: 12px;
    width: 23%;
    margin: 0 0 5px 0;
    text-align: center;
}
.shop_inner .shop-desc dd {
    width: 75%;
    font-size: 12px;
}
.shop_inner .shop-desc ul.shop-vide {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 12px;
}
.shop_inner .shop-desc ul.shop-vide li {
    font-size:10px;
}
.shop_inner ul.btn_set {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    justify-content: space-between;
    padding: 10px 0 0 0;
}

.shop_inner ul.btn_set li {
    width: 48%;
}
.shop_inner ul.btn_set a {
    background: #F36AB5;
    color: #FFF;
    display: flex;
    justify-content: center;
    padding: 8px 12px;
    border-radius: 7px;
    margin: 0;
    align-items: center;
    font-size: 15px;
    font-weight: bold;
}

.btn-keep.flag {
    top: -3px;
    right: 12px;
}

    .btn-keep.flag p {
    position: absolute;
    top: 23px;
    right: -13px;
    font-size: 12px;
    color: #FFF;
    font-weight: bold;
}


/*top new arrival*/

.top_newarrival {
    background-image: url(../img/kuma04.svg);
    background-repeat: no-repeat;
    background-size: 5em;
    background-position: top 1em right 1em;
}

.top_newarrival h2 {
background-size: 6em;
    background-position: top 2.8em left 0.5em;
    font-size: 20px;
    font-weight: bold;
    height: 74px;
    padding: 22px 0 0 7px;
}


.top_newarrival li {
    width: 100%;
    margin: 0 0 10px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.top_newarrival li h4 {
    font-size: 1.1em;
    padding: 9px 0 0 0;
    display: block;
    width: 100%;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.3;
    border: none;
}
    .top_newarrival li figure{
        width: 100%;
    }
    .top_newarrival li img {
	height:155px;
    object-fit: contain;
}
    .top_newarrival li figcaption{
        width: 100%;
    }

    .top_newarrival .head .station {
    margin: 0 10px 0 0;
    font-size: 12px;
}
    .top_newarrival .head .salary {
    display: flex;
    align-items: center;
    font-size: 12px;
}
    .top_newarrival .head .salary span {
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 2px 4px;
    font-size: 11px;
    display: block;
    margin: 0 5px 0 0;
}


/*top ranking*/

.top_ranking li {
    border: 1px solid #CCC;
    padding: 10px;
    margin: 0 0 15px 0;
    border-radius: 5px;
    position: relative;
}

.top_ranking li .rank1 {
    background: url(/lib/img/ico_no1.svg);
    background-repeat: no-repeat;
    width: 49px;
    height: 48px;
    margin: 0 auto;
    font-weight: bold;
    line-height: 3;
    text-align: center;
    position: absolute;
    top: -3px;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
    font-size: 14px;
}

.top_ranking li .rank2 {
    background: url(/lib/img/ico_no2.svg);
    background-repeat: no-repeat;
    width: 49px;
    height: 48px;
    margin: 0 auto;
    font-weight: bold;
    line-height: 3;
    text-align: center;
    position: absolute;
    top: -3px;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
    font-size: 14px;
}

.top_ranking li .rank3 {
    background: url(/lib/img/ico_no3.svg);
    background-repeat: no-repeat;
    width: 49px;
    height: 48px;
    margin: 0 auto;
    font-weight: bold;
    line-height: 3;
    text-align: center;
    position: absolute;
    top: -3px;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
    font-size: 14px;
}

.top_ranking li .rank4,.top_ranking li .rank5,.top_ranking li .rank6,.top_ranking li .rank7,.top_ranking li .rank8,.top_ranking li .rank9,.top_ranking li .rank10 {
    background: pink;
    background-repeat: no-repeat;
    width: 50px;
    height: 43px;
    margin: 0 auto;
    font-weight: bold;
    line-height: 3;
    text-align: center;
    position: absolute;
    top: -3px;
    background-size: cover;
    color: #FFF;
    text-shadow: 1px 1px 1px #000;
    font-size: 14px;
}

.top_ranking li a {
       display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.top_ranking li h4 {
    border: none;
    padding: 0;
    margin: 10px 0 5px 0;
    color: #F36AB5;
    font-weight: bold;
    width: 100%;
    font-size: 16px;
}


.top_ranking li .head {
    display: flex;
    font-size: 13px;
    font-weight: bold;
    padding: 0;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
}

.top_ranking li .head .subarea {
    margin: 0 8px 0 0;
}

.top_ranking li .head .salary{
    display: flex;
    align-items: center;
}

.top_ranking li .head .salary span{
    background: #FFED82;
    color: #AA8400;
    border-radius: 100%;
    font-weight: bold;
    padding: 3px;
    font-size: 11px;
    display: block;
    margin: 0 5px 0 0;
    width: 17px;
}

.top_ranking li img {
    width: 100%;
    margin: 0 auto;
    /*display: block;
    height: auto;
    object-fit: contain;*/
}

.banner_box {
    padding: 0 0 20px 0;
}


/*top column*/


.top_column{
    background-size: 5em;
    background-repeat: no-repeat;
}

.top_column h2{
    background-size: 4em;
    background-position: top 2.8em left 0.5em;
    font-size: 20px;
    font-weight: bold;
    height: 72px;
    padding: 22px 0 0 7px;
}

	.top_column ul {
		align-items:flex-start;
		justify-content:space-between;
	}
    .top_column li {
		width: 48%;
		margin: 0 0 1rem;
	}


.writer {
    border: 1px solid #CCC;
    padding: 25px;
    text-align: center;
    width: 100%;
    margin: 0 auto;
    background: aliceblue;
    display: block;
}
.writer .name {
    font-size: 15px;
    font-weight: bold;
    padding: 10px 0 20px 0;
}
.writer .txt {
    font-size: 13px;
}



    /*sitemap*/

    .sitemap h3 {
    text-align: left;
    background: #FFF;
    padding: 10px;
}



    .foot-area-text {
    width: 90%;
    margin: 0 auto;
}

    .foot-area-text p {
    line-height: 1.5;
    font-size: 12px;
    padding: 0 0 30px 0;
}


    .col-sm-3.sidebar {
    display: none;
}


    .foot-nav-area {
    width: 100%;
    margin: 0 auto;
}
    .foot-nav-area ul {
    width: 100%;
    margin: 17px auto;
    display: flex;
	justify-content: space-around;
}
    .foot-nav-area li {
    margin: 5px;
    width: 46%;
}
    .foot-nav-area li a {
    display: block;
    padding: 10px;
    width: 100%;
    border: 1px solid #CCC;
    border-radius: 7px;
}

}

.top_column.enter {
	background:none;
	max-width:1100px;
	margin:auto;
}
.top_column.enter h2 {
	background:none;
	font-weight: bold;
	padding: 1rem 0.5rem 0.5rem 0;
	border-bottom: 3px solid #ee8ab5;
	font-size: 18px;
	margin: 21px 0 15px 0;
}
.top_column.enter p {
	margin:0;
}
.top_column.enter ul {
	justify-content:space-between;
	align-items:stretch;
}
.top_column.enter li {
	background:#fff;
	width:48%;
	margin:0 auto 1rem;
	padding:0.5rem;
}
.top_column.enter .btn_base01 {
	margin:auto;
}
@media screen and (min-width: 769px) {
	.top_column.enter li {
		width:32%;
	}
}

.main-recomm-child > a h3 {
    background: none;
    font-size: 1.4em;
    display: block;
    border: 0;
    padding: 0;
}
.side-recomm-box figure + figcaption h3 {
    background: none;
    font-size: 1.4em;
    display: block;
    border: 0;
    padding: 0;
}
