@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700;800;900&family=Noto+Serif+JP:wght@400;500;600;700;900&family=Roboto:wght@300;400;500;700;900&display=swap');

*{
  margin:0;
  padding:0;
  list-style: none;
  box-sizing: border-box;
  text-decoration: none;
  background-size: cover;
  background-position: center;
}

*::before,
*::after{
  background-size: cover;
  background-position: center;
  font-family: 'Noto Serif JP', serif;
}

html {
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body{
  color:#000;
  font-size: 16px;
  font-weight: 500;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.1em;
  -webkit-font-smoothing: antialiased;
  -ms-text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

img{
  display: block;
  object-position: center;
}

main{
  /* padding-top: 60px; */
  padding-top: 75px;
  overflow: hidden;
}

.container{
  max-width: 1100px;
  margin:0 auto;
}
.container02{
  max-width: 1200px;
  margin:0 auto;
}
/* 
.container-bannar{
  max-width: 1100px;
  margin:0 auto;
} */

/*
----------------------------------------
共通部分
----------------------------------------
*/

.hide{
  display: none!important;
}

.common_hover_opa{
  transition: 0.4s;
}
@media(any-hover:hover){
  .common_hover_opa:hover{
    opacity: 0.7;
  }
}/*@media(any-hover:hover){*/


/*セクションのタイトルセット*/
.common_title_set{
  margin-bottom: 40px;

}

.common_title_set .en_title{
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3;
  display: flex;
  justify-content: center;
}

.common_title_set .ja_title{
  margin-top: 10px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  display: flex;
  justify-content: center;

}


/*矢印付きのリンクボタン*/
.common_arrow_link{
  width:300px;
  margin:0 0 0 auto;
  position: relative;
  padding-bottom: 10px;
  padding-top: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.2;
  color:#000;
}

.common_arrow_link::before{
  transition: 0.4s;
  content:"";
  width:100%;
  height:1px;
  background-color: #000;
  position: absolute;
  bottom:0;
  left:0;
}

.common_arrow_link::after{
  transition: 0.4s;
  content:"";
  width:40px;
  height:1px;
  background-color: #000;
  position: absolute;
  right:0;
  bottom:0;
  transform: rotateZ(50deg);
  transform-origin: right;
}

@media(any-hover:hover){
  .common_arrow_link:hover::before{
    left:20px;
  }
  .common_arrow_link:hover::after{
    right:-20px;
  }
}/*@media(any-hover:hover){*/


/*アコーディオン*/
.common_switch_block{

}

.common_switch_block .common_switch{
  background-color: #000;
  color:#fff;
  line-height: 1.5;
  position: relative;
  padding:24px 64px;
  cursor: pointer;
  transition: 0.4s;
}

@media(any-hover:hover){
  .common_switch_block .common_switch:hover{
    opacity: 0.7;
  }
}/*@media(any-hover:hover){*/

.common_switch_block .common_switch::after{
  content:'';
  transition: 0.4s;
  position: absolute;
  right:32px;
  top:0;
  bottom:0;
  margin:auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  border-color: #fff transparent transparent transparent;
}

.common_switch_block .common_switch.active::after{
  transform: rotateZ(180deg);
}

.common_switch_block .common_switch_contens{
  display: none;
  padding-bottom: 16px;
}

.common_switch_block .common_switch_contens.open{
  display:block;
}


/*トピック一覧*/
.common_topics_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap:48px 0;
}

.common_topics_list .topics_item{
  width: 48%;
}

.common_topics_list .topics_card{
  width: 100%;
  display: flex;
  align-items: flex-start;
  color:#000;
}

.common_topics_list .topics_thumb{
  flex-shrink: 0;
  width: 250px;
  margin-right: 24px;
  aspect-ratio: 1/0.714;
  position: relative;
  overflow: hidden;
}

.common_topics_list .topics_thumb .pic{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

@media(any-hover:hover){
  .common_topics_list .topics_card:hover .topics_thumb .pic{
    transform: scale(1.1);
  }
}

.common_topics_list .topics_shop_logo_frame{
  position: absolute;
  width:60px;
  height:60px;
  background-color: rgba(255,255,255,0.6);
  top:0;
  left:0;
  z-index:1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.common_topics_list .topics_shop_logo{
  width:70%;
}

.common_topics_list .topics_text_area{
  width: 100%;
}

.common_topics_list .topics_title{
  font-size: 18px;
  font-weight: bold;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
}

.common_topics_list .topics_cat_list{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-top:8px;
  gap:8px;
}

.common_topics_list .topics_cat_list .cat{
  width:fit-content;
  min-width: 100px;
  padding:6px 10px;
  background-color: #000;
  color:#fff;
  font-family: 'Noto Serif JP', serif;
  font-size: 11px;
  line-height: 1.4;
  text-align: justify;
  text-align-last: justify;
}

.common_topics_list .topics_excerpt{
  margin-top: 8px;
  font-size: 14px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 1.5;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
}

/*店舗からのお知らせ一覧*/
.common_shop_info_list{
  display: flex;
  flex-wrap: wrap;
}

.common_shop_info_list li{
  margin-bottom: 40px;
  margin-right: 25px;
}

.common_shop_info_list li:nth-child(3n){
  margin-right: 0;
}

.common_shop_info_list .card{
  display: block;
  width:350px;
  aspect-ratio: 1/0.714;
  /* height:250px; */
  position: relative;
  overflow: hidden;
}

.common_shop_info_list .card .thumb{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

@media(any-hover:hover){
  .common_shop_info_list .card:hover .thumb{
    transform: scale(1.1);
  }
}

.common_shop_info_list .card .shop_info_shop_logo_frame{
  position: absolute;
  width:60px;
  height:60px;
  object-fit: cover;
  background-color: rgba(255,255,255,0.6);
  top:0;
  left:0;
  z-index:1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.common_shop_info_list .card .shop_info_shop_logo{
  width:70%;
}

.common_shop_info_list .card .shop_info_title{
  position: absolute;
  bottom:0;
  left:0;
  width:100%;
  padding:6px 12px;
  font-weight: 400;
  line-height: 1.5;
  color:#fff;
  background-color: rgba(0,0,0,0.6);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.common_shop_info_list .card .category_list{
  position: absolute;
  top:0;
  right:0;
  z-index: 1;
  display: flex;
  justify-content: flex-end;
}

.common_shop_info_list .card .cat{
  width:fit-content;
  min-width: 90px;
  padding:6px 10px;
  background-color: #000;
  color:#fff;
  font-family: 'Noto Serif JP', serif;
  font-size: 10px;
  line-height: 1.4;
  text-align: justify;
  text-align-last: justify;
  display: none;
  max-width: 120px;
}

.common_shop_info_list .card .cat:first-child{
  display: block;
}

.common_shop_info_list .card .cat:last-child{
  margin-bottom: 0;
}


/*店舗カード一覧*/
.common_shop_list{
  max-width: 900px;
  margin:0 auto;
}

.common_shop_list .shop_block{
  margin-bottom: 56px;
  display: flex;
}

.common_shop_list .shop_block:last-child{
  margin-bottom: 0;
}

.common_shop_list .shop_block .thumb{
  width: 400px;
  aspect-ratio: 1/0.61;
  /* height: 244px; */
  flex-shrink: 0;
  overflow: hidden;
}

.common_shop_list .shop_block .thumb img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

@media(any-hover:hover){
  .common_shop_list .shop_block .thumb:hover img{
    transform: scale(1.1);
  }
}

.common_shop_list .shop_block .text_area{
  width:100%;
  padding-left: 40px;
  /* display: flex;
  flex-direction: column;
  justify-content: space-between; */
}

.common_shop_list .shop_block .shop_name_flex{
  display: flex;
  align-items: center;
  width: fit-content;
}

.common_shop_list .shop_block .shop_name_flex {
  font-size: 24px;
  font-weight: 400;
  line-height: 1.4;
  color:#000;
}

.common_shop_list .shop_block .shop_name_flex img{
  height:50px;
  flex-shrink: 0;
  margin-right: 12px;
}
.common_shop_list .shop_block .shop_name{
  
}

.common_shop_list .shop_block .shop_name .text_link{
  font-size: 24px;
  font-weight: 400;
  line-height: 1.4;
  color:#000;
  transition: 0.4s;
}

@media(any-hover:hover){
  .common_shop_list .shop_block .shop_name .text_link:hover{
    text-decoration: underline;
  }
}

.common_shop_list .shop_block .shop_adress{
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.5;
  display: none!important;
}

.common_shop_list .shop_block .info_flex{
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  display: none!important;
}

.common_shop_list .shop_block .info_flex a{
  color:#000;
}

.common_shop_list .shop_block .info_block{
  display: flex;
  margin-top: 12px;
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  font-size: 14px;
  line-height: 1.5;
}

.common_shop_list .shop_block .info_block .label{
  flex-shrink: 0;
}

.common_shop_list .shop_block .time_block{
  margin-right: 32px;
}

.common_shop_list .shop_block .tel_block a{
  pointer-events: none;
}


.common_shop_list .shop_block .link_flex{
  margin-top: 24px;
  display: flex;
}

.common_shop_list .shop_block .link_flex .button{
  display: flex;
  justify-content: center;
  align-items: center;
  width:200px;
  height:40px;
  color:#fff;
  font-weight: 500;
  border:1px solid #464646;
  background-color: #464646;
  transition-duration: 0.4s;
}

@media(any-hover:hover){
  .common_shop_list .shop_block .link_flex .button:hover{
    background-color: #fff;
    color:#000;
  }
}

.common_shop_list .shop_block .link_flex .button + .button{
  margin-left: 16px;
}

.common_shop_list .shop_block .recruit_link{
  display: flex;
  justify-content: center;
  align-items: center;
  width:200px;
  height:40px;
  color:#fff;
  font-weight: 500;
  border:1px solid #E3046A;
  background-color: #E3046A;
  transition-duration: 0.4s;
  margin-top: 16px;
}

@media(any-hover:hover){
  .common_shop_list .shop_block .recruit_link:hover{
    background-color: #fff;
    color:#E3046A;
  }
}

/*
----------------------------------------
ヘッダー
----------------------------------------
*/

header{
  position: fixed;
  width:100%;
  background-color:#060606;
  /* background-color:#72777B; */
  top:0;
  left:0;
  z-index: 100;

}

header .header_container{
  padding:0 0 0 60px;
}

header .header_flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header .header_logo{
  display: block;
  width:200px;
}

header .header_logo .logo_text{
  color:#fff;
  line-height: 1;
  font-weight: 400;
  font-size: 20px;
}

header .header_logo img{
  width:100%;
}

header .header_right{

}

header .header_right nav{
  
}

header .parent_list{
  display: flex;
  align-items: center;
}


header .parent_list .parent_item{
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
}

header .parent_list .slash{
  width:42px;
  margin:0 24px;
}

header .parent_list .slash img{
  width:100%;
}

header .parent_list .parent_link{
  color:#fff;
  text-align: center;
}

header .parent_list .parent_link .en_title{
  font-size: 14px;
  font-weight: 400;
  line-height: 1;  
  margin-bottom: 6px;
}

header .parent_list .parent_link .ja_title{
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
}

header .recruit_link{
  display: flex;
  justify-content: center;
  align-items: center;
  height:75px;
  background:linear-gradient( 30deg, rgb(157,215,0) 0%, rgb(113,195,16) 33%, rgb(68,174,31) 99%);
  color:#fff;
  margin-left: 24px;
  text-align: center;
  width: 240px;
  clip-path: polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
  padding-left: 32px;
}


header .recruit_link .en_title{
  font-size: 14px;
  font-weight: 400;
  line-height: 1;  
  margin-bottom: 6px;
}

header .recruit_link .ja_title{
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
}

/*
----------------------------------------
フッターバナーエリア
----------------------------------------
*/

.common_banner_area{
  padding:0 0 100px;
  position: relative;
}

.common_banner_area .banner_flex{
  display: flex;
  justify-content: space-between;
}

.common_banner_area .banner{
  width:500px;
  height:300px;
  overflow: hidden;
}

.common_banner_area .banner img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

.common_banner_area .banner_link:hover img{
  transform: scale(1.1);
}

.common_banner_area .bg{
  width:1200px;
  position: absolute;
  z-index:-5;
  bottom:0;
  left:0;
}


/*
----------------------------------------
イベントバナーエリア
----------------------------------------
*/

.common_event_area{
  /* padding:40px 0 40px 0; */
	background-image:url(http://arakix-second.com/club/wp-content/uploads/2023/09/event-back-scaled.jpg)
}

.common_event_area .swiper_block{
  position: relative;
  /* padding:0 40px; */
}

.common_event_area .swiper_block .event_button{
  cursor: pointer;
  position:absolute;
  z-index: 10;
  top:0;
  bottom:0;
  margin:auto;
  transition: 0.4s;
  display: none;
}

@media(min-width:768px){
  .common_event_area .swiper_block .event_button:hover{
    opacity: 0.7;
  }
}/*@media(min-width:768px){*/

.common_event_area .swiper_block .event_prev_button{
  left:-50px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 28px 16px 0;
  border-color: transparent #000 transparent transparent;
}

.common_event_area .swiper_block .event_next_button{
  right:-50px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 0 16px 28px;
  border-color: transparent transparent transparent #000;
}

.common_event_area .swiper-slide{
  width:100vw;
  /* aspect-ratio: 1/0.167; */
  padding:0;
}

.common_event_area .swiper-slide .card{
  display: block;
  width:100%;
  /* height:150px; */
  aspect-ratio: 1/0.15;
}

.common_event_area .swiper-slide .card img{
  width:100%;
  height:100%;
  object-fit: cover;
}


/*
----------------------------------------
フッター
----------------------------------------
*/

footer{
  
}

/* footer .page_top{
  cursor: pointer;
  position: absolute;
  z-index: 10;
  width:56px;
  border-radius: 50%; 
  bottom:32px;
  right:72px;
} */
footer .page_top{
  cursor: pointer;
  position: fixed;
  z-index: 10;
  width:56px;
  border-radius: 50%; 
  bottom:28px;
  right:40px;
  pointer-events: none;
  opacity: 0;
  transition-duration: 0.4s;
}

footer .page_top.show{
  opacity: 1;
  pointer-events: auto;
}

footer .page_top img{
  width:100%;
}

footer .footer_area01{
  padding:56px 0 40px;
  background-color: #000;
  color:#fff;
  position: relative;
}

footer .footer_logo{
  display: block;
  width:fit-content;
  width:200px;
  position: absolute;
  left:40px;
  bottom:32px;
  z-index: 2;
}

footer .footer_logo img{
  width:100%;
}

footer .footer_flex{
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  align-items: center;
}

footer .footer_left{
  display: flex;
}


footer .menu_list{

}

footer .menu_list li{
  text-align: center;
}

footer .menu_list li + li{
  margin-top: 32px;
}


footer .menu_list .menu_link{
  /* display: flex;
  align-items: center; */
  color:#fff;
  font-weight: 400;
  line-height: 1.3;
  
}

footer .menu_list .menu_link .en_title{
  font-size: 14px;
}

footer .menu_list .menu_link .ja_title{
  /* margin-left: 16px; */
  font-size: 14px;
}

footer .block01{
  /* margin-right: 96px; */
}

footer .footer_right{
  margin-top: 48px;
}

footer .sns_flex{
  display: flex;
  align-items: center;
}

footer .sns_flex a{
  margin-left: 20px;
}

footer .sns_flex a:first-child{
  margin-left: 0;
}

footer .sns_flex a img{
  width: 35px;
  border-radius: 5px;
}


footer .footer_area02{
  padding:20px 0;
  background-color: rgba(26,26,26,1);
  text-align: center;
  color:#fff;
  font-size: 10px;
}




/*
----------------------------------------
トップページ
----------------------------------------
*/

body.top_body{
  
}

main.top_main{

}

.top_section{
  
}

.top_section01{

}

.top_section01 .mv_youtube_frame{
  height:56.25vw;
  position: relative;
  /* height:200px; */
}

.top_section01 .mv_youtube_frame::before{
  /* content:""; */
  width:100%;
  height:100%;
  z-index:10;
  position: absolute;
  top:0;
  left:0;
}

.top_section01 .mv_youtube_frame iframe{
  display: block;
  width:100%;
  height:100%;

}

.top_section01 .mv img{
  width:100%;
}

.top_section02{
  padding:60px 0 24px;
}

.top_section02 .shop_frame{
  margin-bottom: 32px;
}

.top_section02 .flex{
  display: flex;
  justify-content: center;
  
}

.top_section02 .flex .card{
  width: 200px;
  height: 350px;
  position: relative;
  overflow: hidden;
  margin:0 20px;
}

.top_section02 .flex .card .bg{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

.top_section02 .flex .card .shop_logo_frame{
  position: absolute;
  width:90px;
  height:90px;
  display: flex;
  justify-content: center;
  align-items: center;
  object-fit: cover;
  background-color: rgba(255,255,255,0.6);
  top:0;
  left:0;
  bottom:0;
  right:0;
  margin:auto;
}

.top_section02 .flex .card .shop_logo{
  width:70%;
}

.top_section02 .flex .card:hover .bg{
  transform: scale(1.1);
}



.top_section03{
  position: relative;
  padding:40px 0;
  background-color: rgba(0,0,0,0.7);
}

.top_section03 .bg{
  width:1920px;
  min-width:100vw;
  height:100%;
  object-fit: cover;
  position: absolute;
  z-index:-3;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  /* filter: grayscale(100%); */
}

.top_section03 .common_title_set{
  color:#fff;
}

.top_section03 .common_arrow_link{
  color:#fff;
}

.top_section03 .common_arrow_link::before,
.top_section03 .common_arrow_link::after{
  background-color: #fff;
}


.top_section04{
  padding-top: 140px;
  position: relative;
}

.top_section04 .common_arrow_link{
  margin-top: 32px;
}

.top_section05{
  padding:80px 0 0;
}

.top_section05 .tiktok_frame{
  width:600px;
  height:500px;
  margin:0 auto;
}

.top_section05 .tiktok_frame blockquote{
  display: block;
  width:100%;
  height:100%;
}

.top_section06{
  padding:80px 0;
}

.top_section06 .youtube_frame{
  width:800px;
  height:450px;
  margin:0 auto;
}

.top_section06 .youtube_frame iframe{
  width:100%;
  height:100%;
  display: block;
}


.top_ranking_section{
  padding:140px 0;
  background-color: #464646;
}

.top_ranking_section h2{
  font-weight: 600;
  font-size: 24px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  line-height: 1;
}

.top_ranking_section .p01{
  margin-top: 14px;
  font-size: 16px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  line-height: 1;
}

.top_ranking_section .rank_area{
  margin-top: 80px;
}

.top_ranking_section .rank_block{
  position: relative;
  display: block;
}

.top_ranking_section .rank_block .number_head{
  position: absolute;
  top:0;
  right:0;
  z-index: 5;
  display: flex;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  aspect-ratio: 1/1;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
}

.top_ranking_section .rank_block .thumb{
  overflow: hidden;
  position: relative;
  aspect-ratio: 1/1.75;
}

.top_ranking_section .rank_block .thumb img{
  transition-duration: 0.4s;
  width:100%;
  height:100%;
  object-fit: cover;
  object-position: top;
}

.top_ranking_section .rank_block:hover .thumb img{
  transform: scale(1.1);
}

.top_ranking_section .rank_block .rank_shop_logo{
  position: absolute;
  left:0;
  top:0;
  display: flex;
  justify-content: center;
  align-items: center;
  object-fit: cover;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: 1;
}

.top_ranking_section .rank_block .rank_shop_logo img{
  width:70%;
  height:auto!important;
  object-fit: contain;
}

.top_ranking_section .rank_block .rank_footer{
  background-color: rgba(255,255,255,0.6);
  width:100%;
  position: absolute;
  bottom:0;
  left:0;
  right:0;
  color:#000000;
  font-weight: 600;
  /* word-break: break-all; */
}

.top_ranking_section .rank_block .rank_footer .rank_shop_name{
  font-size: 12px;
  line-height: 1;
}

.top_ranking_section .rank_block .rank_footer .rank_name{
  /* font-weight: 600;
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-top: 12px; */
  font-weight: 600;
  font-size: 17px;
  letter-spacing: 0.0em;
  line-height: 1;
  margin-top: 7px;
}

.top_ranking_section .rank_block .rank_footer .rank_job{
  
  font-weight: 600;
  font-size: 12px;
  color: #626262;
  line-height: 1;
}

.top_ranking_section .list01{
  display: flex;
  justify-content: center;

}

.top_ranking_section .list01 .rank_block{
  display: block;
  width:245px;
  margin-left: 44px;
}

.top_ranking_section .list01 .rank_block01{
  /* width:520px; */
  margin-left: 0;
}

.top_ranking_section .list01 .rank_block .thumb{
  /* height:318px; */
  
}
.top_ranking_section .list01 .rank_block .rank_shop_logo{
  width:60px;
  height:60px;
}

.top_ranking_section .list01 .rank_block .number_head{
  width:37%;
  background-color: rgba(253,0,167,0.7);
  font-size: 16px;
  padding-top: 10px;
  padding-left: 40px;
}

.top_ranking_section .list01 .rank_block .rank_footer{
  /* min-height:120px; */
  padding:12px 16px;
}

.top_ranking_section .list02{
  margin-top: 80px;
  position: relative;
}

.top_ranking_section .list02 .rank_arrow{
  position: absolute;
  cursor: pointer;
  z-index: 10;
  width:16px;
  top:0;
  bottom:0;
  margin:auto;
}

.top_ranking_section .list02 .rank_prev_button{
  left:-40px;
}

.top_ranking_section .list02 .rank_next_button{
  right:-40px;
}

.top_ranking_section .list02 .swiper-slide{
  width:210px;
  padding-right: 20px;
}

.top_ranking_section .list02 .rank_block{
  width:190px;
  
}

.top_ranking_section .list02 .rank_block .thumb{
  /* height:200px; */
}

.top_ranking_section .list02 .rank_block .rank_shop_logo{
  width:40px;
  height:40px;
}

.top_ranking_section .list02 .rank_block .number_head{
  width: 35%;
  /* background-color: rgba(0, 0, 0, 0.7); */
  background-color: rgba(253,0,167,0.7);
  font-size: 13px;
  padding-top: 7px;
  padding-left: 28px;
}

.top_ranking_section .list02 .rank_block .rank_footer{
  /* min-height:92px; */
  padding:12px 10px; 
}

.top_ranking_section .common_arrow_link{
  color:#fff;
  margin-left: auto;
  margin-top: 40px;
}

.top_ranking_section .common_arrow_link::before,
.top_ranking_section .common_arrow_link::after{
  background-color: #fff;
}

.top_ranking_section .update_date{
  margin-top: 40px;
  display: flex;
  justify-content: flex-end;
  color:#fff;
  font-size: 14px;
}

.top_ranking_section .no_result{
  text-align: center;
  color:#fff;
  margin-top: 96px;
}

/*
----------------------------------------
下層部分
----------------------------------------
*/

.page_mv_section{
  height:550px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.page_mv_section .mv{
  width:1440px;
  min-width: 100vw;
  height:100%;
  object-fit: cover;
  z-index:-3;
  position: absolute;
  top:0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.page_mv_section .title_block{
  color:#fff;
  width: 1100px;
  max-width: 100%;
}

.page_mv_section .title_block .en_title{
  font-size: 50px;
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: 12px;
}

.page_mv_section .title_block .ja_title{
  font-size: 30px;
  line-height: 1.2;
  font-weight: 500;
}

/*
----------------------------------------
店舗一覧
----------------------------------------
*/

.shop_list_section01{
  padding:64px 0 300px;
}

.shop_list_section01 .goole_map{
  max-width:1000px;
  height:500px;
  margin:100px auto 0;
}

.shop_list_section01 .goole_map iframe{
  display: block;
  width:100%;
  height:100%;
}

/*
----------------------------------------
店舗詳細
----------------------------------------
*/

body.single_shop_body{
  
}

body.single_shop_body .common_banner_area {
  padding-top: 100px;
}

main.single_shop_main{

}

.single_shop_section01{
  padding:100px 0 0;
}

.single_shop_section01 .tab_list{
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}

.single_shop_section01 .tab_list .tab{
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  color:#000;
  font-size: 18px;
  width:120px;
  height: 40px;
  transition-duration: 0.4s;
  position: relative;
}

.single_shop_section01 .tab_list .tab + .tab{
  margin-left: -1px;
}

.single_shop_section01 .tab_list .tab + .tab::before{
  content:'';
  width:1px;
  height:30px;
  background-color: #000;
  position: absolute;
  left:0;
  top:0;
  bottom:0;
  margin:auto;
}

@media(any-hover:hover){
  .single_shop_section01 .tab_list .tab:hover{
    background-color: #000;
    color:#fff;
  }
}

.single_shop_section01 .tab_list .tab.active{
  background-color: #000;
  color:#fff;
}


.single_shop_section01 .no_result{
  text-align: center;
  margin-top: 48px;
}

.single_shop_section01 .main_block{
  
}

.single_shop_section01 .flex{
  display: flex;
  flex-wrap: wrap;
  /* overflow-x: scroll;
  width: 100vw;
  margin: 0 calc(50% - 50vw); 
  padding-left: 12%; */
}

.single_shop_section01 .sub_flex{
  display: flex;
  flex-wrap: wrap;
  gap:25px;
}

.single_shop_section01 .sub_block{
  /* margin-left: 25px; */
}

.single_shop_section01 .card{
  display: block;
  width: 200px;
  height: 350px;
  position: relative;
  overflow: hidden;
  /* transition: 0.4s; */
}

.single_shop_section01 .card:hover{
  /* opacity: 0.8; */
}

.single_shop_section01 .card .number_shop_logo{
  position: absolute;
  z-index:1;
  top:0;
  left:0;
  width:50px;
  height:50px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(255,255,255,0.6);
}

.single_shop_section01 .card .number_shop_logo img{
  max-width:70%;
  max-height:70%;
}

.single_shop_section01 .card .pic{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

.single_shop_section01 .card:hover .pic{
  transform: scale(1.1);
}

.single_shop_section01 .card .no_pic{
  width:100%;
  height:100%;
  background-color: #D9D9D9;
}

.single_shop_section01 .card .number{
  position: absolute;
  top:16px;
  left:12px;
  width:50px;
  display: none;
}

.single_shop_section01 .card .number_text{
  position: absolute;
  top: 0;
  right: 0;
  z-index: 5;
  display: flex;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
  aspect-ratio: 1 / 1;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  width: 35%;
  background-color: rgba(253, 0, 167, 0.7);
  font-size: 13px;
  padding-top: 7px;
  padding-left: 28px;
}

.single_shop_section01 .card .name_area{
  position: absolute;
  bottom:0;
  left:0;
  z-index:10;
  width:100%;
  padding:8px 16px;
  background-color: rgba(0,0,0,0.6);
  color:#fff;
  font-size: 14px;
  line-height: 1.4;
	text-align:center;
}

.single_shop_section01 .card .number_job{
  margin-bottom: 4px;
}

.single_shop_section01 .card .number_name{
  font-size:17px;
}

.single_shop_section01 .update_date {
  margin-top: 40px;
  display: flex;
  justify-content: flex-end;
  font-size: 14px;
}

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

.single_shop_section02 .staff_block{
  width:480px;
  display: flex;
  margin-top: 50px;
  color:#000;
}

.single_shop_section02 .staff_block .thumb{
  width:200px;
  height:200px;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
}

.single_shop_section02 .staff_block .thumb .pic{
  width:100%;
  height:100%;
  object-fit: cover;
  object-position: top;
  transition: 0.4s;
}

.single_shop_section02 .staff_block:hover .thumb .pic{
  transform: scale(1.1);
}

.single_shop_section02 .staff_block .thumb .no_pic{
  width:100%;
  height:100%;
  background-color: #D9D9D9;
}

.single_shop_section02 .staff_block .rank_area{
  position: absolute;
  right:5px;
  top:5px;
}

.single_shop_section02 .staff_block .rank_area .box{
  width: 40px;
  height: 40px;
  background-color: #72777B;
  color:#fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color:#fff;
  white-space: nowrap;
  font-size: 14px;
  margin-bottom: 10px;
}

.single_shop_section02 .staff_block .text_area{
  width:100%;
  padding-left: 24px;
}

.single_shop_section02 .staff_block .staff_name02{
  line-height: 1.2;
  margin-bottom: 12px;
  font-size: 14px;
}

.single_shop_section02 .staff_block .staff_name01{
  line-height: 1.3;
  font-size: 20px;
}

.single_shop_section02 .staff_block .staff_birth{
  margin-bottom: 24px;
  font-size: 20px;
  line-height: 1.3;
}

.single_shop_section02 .staff_block .staff_info{
  display: flex;
  flex-wrap: wrap;
  font-size: 18px;
  line-height: 1.5;
}

.single_shop_section02 .staff_block .staff_info span{
  display: flex;
  align-items: center;
}

.single_shop_section02 .staff_block .staff_info span::before{
  content:"/";
  font-size: 18px;
  line-height: 1.5;
}

.single_shop_section02 .staff_block .staff_info span:first-child::before{
  content:"";
}

.single_shop_section02 .staff_block .tag_list {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 6px 10px;
}

.single_shop_section02 .staff_block .tag_item {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2px 4px;
  font-size: 12px;
  color: #fff;
  background-color: #72777B;
}

.single_shop_section03{
  padding:100px 0 0;
}

.single_shop_section .shop_sns{
  width: fit-content;
  display: flex;
  align-items: center;
  margin:60px auto 0;
}

.single_shop_section .shop_sns li + li{
  margin-left: 20px;
}

.single_shop_section .shop_sns a{
  display: block;
  width: 50px;
}

.single_shop_section .shop_sns img{
  width: 100%;
}

.single_shop_section .gal_area{
  margin-top: 60px;
  margin-bottom: 80px;
}

.single_shop_section .gal_area img{
  cursor: zoom-in;
}

.single_shop_section .gal_popup{
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  width:100%;
  height:100vh;
  z-index: 1000;
  top:0;
  left:0;
  background-color: rgba(0,0,0,0.9);
  transition-duration: 0.7s;
  opacity: 0;
  pointer-events: none;
}

.single_shop_section .gal_popup.show{
  opacity: 1;
  pointer-events: auto;
  cursor: zoom-out;
}

.single_shop_section .gal_popup_frame{
  width:80%;
  max-width: 1400px;
  height:70%;
}

.single_shop_section .gal_popup_frame img{
  width: 100%;
  height:100%;
  object-fit: contain;
}



.single_shop_section03 .link_flex{
  display: flex;
  justify-content: space-around;
  margin-bottom: 96px;
}

.single_shop_section03 .link_flex .common_arrow_link{
  margin:0;
}

.single_shop_section03 .common_switch_block{
  border-bottom:1px solid #fff;
}

.single_shop_section03 .common_switch_contens{
  padding:24px;
  line-height: 1.5;
}

.single_shop_section03 .access_block .map{
  color:blue;
}

.single_shop_section03 .access_block .tel{
  color:#000;
}
@media(any-hover:hover){
  .single_shop_section03 .access_block .tel{
    pointer-events: none;
  }
}


.single_shop_banner_section{
  padding:100px 0 0;
}

.single_shop_banner_section .banner{
  height:165px;
  display: flex;
  justify-content: center;
}

.single_shop_banner_section .banner img{
  width:100%;
  height:100%;
  object-fit: cover;
}

.single_shop_section04{
  padding:100px 0 0;
}

.single_shop_section04 .calendar_frame{
  width:800px;
  height:540px;
  margin:0 auto;
}

.single_shop_section04 .calendar_frame iframe{
  display: block;
  width:100%;
  height:100%;
}



/*
----------------------------------------
スタッフ紹介
----------------------------------------
*/

body.single_staff_body{
  
}

body.single_staff_body .common_banner_area {
  padding-top: 100px;
}

main.single_staff_main{

}

.single_staff_section01{
  padding:100px 0;
}

.single_staff_section01 .staff_block{
  display: flex;
  margin-bottom: 96px;
}

.single_staff_section01 .staff_block .thumb{
  width: 350px;
  height: 500px;
  position: relative;
  flex-shrink: 0;
}

.single_staff_section01 .staff_block .thumb .pic{
  width:100%;
  height:100%;
  object-fit: cover;
}

.single_staff_section01 .staff_block .thumb .no_pic{
  width:100%;
  height:100%;
  background-color: #D9D9D9;
}

.single_staff_section01 .staff_block .thumb .number{
  position: absolute;
  top:16px;
  left:12px;
  width:50px;
  display: none;
}

.single_staff_section01 .staff_block .thumb .rank_area{
  position: absolute;
  right: 5px;
  top: 5px;
}

.single_staff_section01 .staff_block .thumb .rank_area .box{
  width: 57px;
  height: 57px;
  background-color: #72777B;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  color:#fff;
  white-space: nowrap;
  margin-bottom: 10px;
}

.single_staff_section01 .staff_block .number_text{
  position: absolute;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  background-color: rgba(0,0,0,0.5);
  line-height: 1;
  padding: 4px 8px;
  letter-spacing: 0.03em;
  font-size: 24px;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
}

.single_staff_section01 .staff_block .text_area{
  width:100%;
  padding-left: 100px;
}

.single_staff_section01 .staff_block .name_flex{
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

.single_staff_section01 .staff_block .staff_name01{
  margin-right: 40px;
  font-size: 30px;
  line-height: 1.3;
  
}

.single_staff_section01 .staff_block .staff_name02{
  font-size: 20px;
  line-height: 1.3;
  padding-top: 10px;
}

.single_staff_section01 .staff_block ul{

}

.single_staff_section01 .staff_block li{
  display: flex;
  margin-bottom: 32px;
}

.single_staff_section01 .staff_block li:last-child{
  margin-bottom: 0;
}

.single_staff_section01 .staff_block li .label{
  font-size: 20px;
  line-height: 1.5;
  flex-shrink: 0;
  width:125px;
}

.single_staff_section01 .staff_block li .contents{
  width:100%;
  font-size: 20px;
  line-height: 1.5;
}

.single_staff_section01 .staff_block li .tag_list{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap:10px 14px;
}

.single_staff_section01 .staff_block li .tag_item{
  display: flex;
  justify-content: center;
  align-items: center;
  padding:2px 6px;
  font-size: 15px;
  color:#fff;
  background-color: #72777B;
}

.single_staff_section01 .staff_block li .sns_list{
  display: flex;
  align-items: center;
  gap:0 10px;
}

.single_staff_section01 .staff_block li .sns_list a{
  width:40px;
}

.single_staff_section01 .staff_block li .sns_list a img{
  width:100%;
}

.single_staff_section01 .img_flex{
  display: flex;
  justify-content: space-around;
}

.single_staff_section01 .img_flex .thumb_pic{
  width:300px;
  height:200px;
  object-fit: cover;
  cursor: zoom-in;
  overflow: hidden;
}

.single_staff_section01 .img_flex .thumb_pic img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

@media(any-hover:hover){
  .single_staff_section01 .img_flex .thumb_pic:hover img{
    transform: scale(1.1);
  }
}

.single_staff_section01 .popup{
  cursor: zoom-out;
  position: fixed;
  top:0;
  left:0;
  z-index:200;
  width:100%;
  height:100vh;
  background-color: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.7s;
  pointer-events: none;
  opacity: 0;
}

.single_staff_section01 .popup.show{
  pointer-events: auto;
  opacity: 1;
}

.single_staff_section01 .popup .pop_pic{
  max-width: 75%;
}

.single_staff_section02{
  padding:32px 0;
  background-color: #000;
}

.single_staff_section02 .flex{
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap:20px 0;
}

.single_staff_section02 .flex .text{
  flex-shrink: 0;
  font-size: 24px;
  line-height: 1;
  color:#fff;
  margin-right: 64px;
  padding-top: 10px;
}

.single_staff_section02 .sns_flex{
  display: flex;
  align-items: center;
  
}

.single_staff_section02 .sns_flex a{
  margin-right: 48px;
  width:50px;
}

.single_staff_section02 .sns_flex a img{
  width:100%;
}

.single_staff_section03{
  padding:100px 0 50px;
  background-image:url(http://arakix-second.com/club/wp-content/uploads/2023/09/event-back-scaled.jpg)
}

.single_staff_section03 .tiktok_frame{
  width:600px;
  height:500px;
  margin:0 auto;
}

.single_staff_section03 .tiktok_frame blockquote{
  display: block;
  width:100%;
  height:100%;
}


.single_staff_section04{
  padding:50px 0 0;
}

.single_staff_section04 .flex{
  display: flex;
  justify-content: space-around;
}

.single_staff_section04 .card{
  width: 300px;
  height: 216px;
  position: relative;
  overflow: hidden;
}

.single_staff_section04 .card .pic{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

.single_staff_section04 .card:hover .pic{
  transform: scale(1.1);
}

.single_staff_section04 .card .pickup_title{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 6px 12px;
  font-weight: 400;
  line-height: 1.5;
  font-size: 14px;
  color: #fff;
  background-color: rgba(0,0,0,0.6);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.single_staff_section04 .card .pickup_shop_logo_frame{
  position: absolute;
  top:0;
  left:0;
  width:60px;
  height:60px;
  object-fit: cover;
  background-color: rgba(255,255,255,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}

.single_staff_section04 .card .pickup_shop_logo{
  width:70%;
}


/*
----------------------------------------
トピックス
----------------------------------------
*/

body.topics_body{
  
}

body.topics_body .common_banner_area {
  padding-top: 240px;
}

main.topics_main{

}

.topics_section01{
  padding:100px 0 0;
}

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

.topics_section01 .common_shop_info_list li{
  margin-bottom: 40px;
  width: 48%;
  margin-right: 0;
}

.topics_section01 .common_shop_info_list .card{
  width:100%;
}


.topics_section01 .common_topics_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap:48px 0;
}

.topics_section01 .common_topics_list .topics_item{
  width: 100%;
}

.topics_section01 .common_topics_list .topics_thumb{
  width: 350px;
}


.topics_section01 .common_topics_list .topics_title {
  font-size: 24px;
}

.topics_section01 .common_topics_list .topics_cat_list {
  margin-top: 12px;
  gap: 12px;
}

.topics_section01 .common_topics_list .topics_cat_list .cat {
  min-width: 120px;
  padding: 6px 10px;
  background-color: #000;
  font-size: 13px;
}

.topics_section01 .common_topics_list .topics_excerpt{
  font-size: 16px;
  -webkit-line-clamp: 4;
}


.topics_section01 .flex{
  display: flex;
  align-items: flex-start;
}


.topics_section01 .topics_article{
  width:100%;
}



.topics_section01 .pagenation{
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 32px;
}

.topics_section01 .pagenation span.current{/*現在のページボタン*/
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin:0 10px;
  background-color: #000;
  color:#fff;
}

.topics_section01 .pagenation a.page-numbers{/*指定のページ移動ボタン*/
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  border:1px solid #000;
  color:#000;
  margin:0 10px;
  transition: 0.4s;
}

.topics_section01 .pagenation a.page-numbers.next,
.topics_section01 .pagenation a.page-numbers.prev{/*next prevボタン*/
  width:70px;
}

.topics_section01 .pagenation a.page-numbers:hover{
  background-color: #000;
  color:#fff;
}

.topics_section01 .sidebar_area{
  width:350px;
  flex-shrink: 0;
  margin-left: 50px;
}

.topics_section01 .sidebar{
  
  padding:24px;
  background-color: #72777B;
}

.topics_section01 .sidebar .sidebar_title{
  color:#fff;
  font-weight: bold;
  margin-bottom: 12px;
  font-size: 20px;
  text-align: center;
}

.topics_section01 .sidebar .common_switch{
  padding: 12px 24px 12px 16px;
}

.topics_section01 .sidebar .common_switch::after{
  right:16px;
  border-width: 12.5px 7.5px 0 7.5px;
  border-color: #fff transparent transparent transparent;
}

.topics_section01 .sidebar .shop_block{
  /* margin-bottom: 16px; */
}

.topics_section01 .sidebar .shop_block li{
  margin-top: 16px;
}

.topics_section01 .sidebar .shop_block li a{
  /* color:#000;   */
  color:#fff;  
  font-weight: 400;
  line-height: 1.3;
}

.topics_section01 .sidebar .shop_block li a:hover{
  text-decoration: underline;
}

.topics_section01 .sidebar .shop_block li a.active{
  text-decoration: underline;
}

.topics_section01 .sidebar .category_block{
  /* margin-bottom: 16px; */
}

.topics_section01 .sidebar .category_block li{
  margin-top: 16px;
}

.topics_section01 .sidebar .category_block li a{
  /* color:#000; */
  color:#fff;
  font-weight: 400;
  line-height: 1.3;
}

.topics_section01 .sidebar .category_block li a:hover{
  text-decoration: underline;
}

.topics_section01 .sidebar .category_block li a.active{
  text-decoration: underline;
}

.topics_section01 .sidebar .common_topics_list{
  margin-top: 32px;
  gap:20px 0;
}

.topics_section01 .sidebar .common_topics_list .topics_card{
  color:#fff;
}

.topics_section01 .sidebar .common_topics_list .topics_thumb {
  width:120px;
  margin-right: 12px;
  position: relative;
}

.topics_section01 .sidebar .common_topics_list .topics_thumb::before{
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #E3046A;
  position: absolute;
  color: #fff;
  line-height: 1;
  z-index: 10;
  font-size: 10px;
}

.topics_section01 .sidebar .common_topics_list .topics_title {
  font-size: 14px;
}

.topics_section01 .sidebar .rank_list li:nth-child(1) .topics_thumb::before{
  content:"No1";
}
.topics_section01 .sidebar .rank_list li:nth-child(2) .topics_thumb::before{
  content:"No2";
}
.topics_section01 .sidebar .rank_list li:nth-child(3) .topics_thumb::before{
  content:"No3";
}
.topics_section01 .sidebar .rank_list li:nth-child(4) .topics_thumb::before{
  content:"No4";
}
.topics_section01 .sidebar .rank_list li:nth-child(5) .topics_thumb::before{
  content:"No5";
}


.topics_section01 .sidebar .shop_info_head{
  color:#fff;
  font-size: 24px;
  font-weight: bold;
  margin-top: 36px;
}
.topics_section01 .sidebar .common_shop_info_list{
  /* flex-direction: column; */
  flex-direction: row;
  margin-top: 16px;
}

.topics_section01 .sidebar .common_shop_info_list li{
  /* width:300px; */
  width:49%;
  max-width: 100%;
}

.topics_section01 .sidebar .common_shop_info_list .shop_info_shop_logo_frame {
  position: absolute;
  width: 40px;
  height: 40px;
}

.topics_section01 .sidebar .common_shop_info_list .card .cat {
  width: 90px;
}

.topics_section01 .sidebar .common_shop_info_list .shop_info_title{
  font-size: 10px;
}

.topics_section01 .sidebar_area .banner_flex{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 24px;
}

.topics_section01 .sidebar_area .banner{
  width:100%;
  overflow: hidden;
} 

.topics_section01 .sidebar_area .banner + .banner{
  margin-top: 16px;
}

.topics_section01 .sidebar_area .banner img{
  width:100%;
  transition-duration: 0.4s;
}

@media(any-hover:hover){
  .topics_section01 .sidebar_area .banner:hover img{
    transform: scale(1.1);
  }
  
}

.topics_section01 .single_block{
  padding:0 0 40px;
  /* border:1px solid #000; */
  font-family: 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
  margin-bottom: 32px;
}

.topics_section01 .single_block .date{
  margin-bottom: 32px;
}

.topics_section01 .single_block h1,
.topics_section01 .single_block h2,
.topics_section01 .single_block h3,
.topics_section01 .single_block h4,
.topics_section01 .single_block h5,
.topics_section01 .single_block h6{
  /* font-family: 'Noto Serif JP', serif; */
}

.topics_section01 .single_block h1{
  margin-bottom: 40px;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4;
  padding-bottom: 8px;
  border-bottom:1px solid #000;

}

.topics_section01 .single_block h2{
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  margin:24px 0;
  color: #ff0071!important;
}


.topics_section01 .single_block h3{
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  margin:16px 0;
  padding-left: 10px;
  border-left:6px solid #ff0071;
}

.topics_section01 .single_block p{
  line-height: 1.8;
  margin:24px 0;
}

.topics_section01 .single_block figure{
  margin-top:32px;
  margin-bottom:32px;
}

.topics_section01 .link_flex{
  display: flex;
  justify-content: space-between;
}

.topics_section01 .link_flex .link a{
  width:300px;
  position: relative;
  padding-bottom: 10px;
  padding-top: 10px;
  display: flex;
  line-height: 1.2;
  color:#000;
}

.topics_section01 .link_flex .link a::before{
  transition: 0.4s;
  content:"";
  width:100%;
  height:1px;
  background-color: #000;
  position: absolute;
  bottom:0;
  left:0;
}

.topics_section01 .link_flex .link a::after{
  transition: 0.4s;
  content:"";
  width:40px;
  height:1px;
  background-color: #000;
  position: absolute;
  bottom:0;
  
}

.topics_section01 .link_flex .link_prev a{
  padding-left: 40px;
}

.topics_section01 .link_flex .link_prev a::after{
  left:0;
  transform: rotateZ(-50deg);
  transform-origin: left;
}

.topics_section01 .link_flex .link_next a{
  justify-content: flex-end;
  padding-right: 40px;
}

.topics_section01 .link_flex .link_next a::after{
  right:0;
  transform: rotateZ(50deg);
  transform-origin: right;
}

@media(any-hover:hover){
  .topics_section01 .link_flex .link_prev:hover a::before{
    left:-20px;
  }
  .topics_section01 .link_flex .link_prev:hover a::after{
    left:-20px;
  }
  .topics_section01 .link_flex .link_next:hover a::before{
    left:20px;
  }
  .topics_section01 .link_flex .link_next:hover a::after{
    right:-20px;
  }
}/*@media(any-hover:hover){*/


.topics_section01 .archive_link{
  display: block;
  width: fit-content;
  margin:32px auto 0;
  color: #000;
  /* padding:0 4px 2px;
  border-bottom:1px solid #000; */

} 
.topics_section02{
  padding:100px 0 0;
}

.topics_section02 .shop_info_frame{
  border:1px solid #000;
  padding:40px;
}

.topics_section02 .shop_info_frame .common_arrow_link{
  width:47%;
} 

.topics_section02 .shop_head{
  margin-bottom: 48px;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4;
  border-bottom:1px solid #000;
  padding-bottom: 8px;
}

.topics_section03{
  padding:100px 0 0;
}

.topics_section03 .recent_list{
  /* display: flex;
  justify-content: space-around; */
  max-width:100%;
  padding:0 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 40px 70px
}

.topics_section03 .recent_list .recent_card{
  font-display: block;
  width: 300px;
  height: 216px;
  position: relative;
  overflow: hidden;
}

.topics_section03 .recent_list .recent_card .thumb{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: 0.4s;
}

.topics_section03 .recent_list .recent_card:hover .thumb{
  transform: scale(1.1);
}

.topics_section03 .recent_list .recent_card .recent_title{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 6px 12px;
  font-weight: 400;
  line-height: 1.5;
  font-size: 14px;
  color: #fff;
  background-color: rgba(0,0,0,0.6);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.topics_section04{
  padding:100px 0 0;
}

.topics_section04 .common_arrow_link {
  margin-top: 32px;
}

.add-new-white{
	color:#fff;
}

#calendarTitle{
	display:none;
}

/*
----------------------------------------
ランキング
----------------------------------------
*/

body.ranking_body{
  
}

main.ranking_main{

}

.ranking_section01{
  padding-bottom: 80px!important;
}