

main .contentWrap {
	max-width: 1120px;
	margin: auto;
}

.topfv {
/*	display: block;*/
/*	background-image: url("../../../common/images/top/main.jpg");
	background-position: center top;
	width: 100%;
	height: 770px;
	margin-top: 165px;
background-position: center top !important;	*/
}
.toptab {
	display: none;
}
.topsp {
	display: none;
}
	
/* ========================================================
   外部ウィジェット（すぐヒメ・日記・口コミ）を枠内いっぱいに広げる設定
======================================================== */
.infoitem .fujoho_custom_banner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    margin-bottom: 10px !important; /* ボックス間の隙間を詰める */	
}

/* 内部のスクロールボックスやフッター部分も100%幅に追従させる */
.infoitem .fujoho_custom_banner .fujoho_iphone_scroll_size_box,
.infoitem .fujoho_custom_banner .fujoho_footer_area {
    width: 100% !important;
    box-sizing: border-box;
}
/* ========================================================
   ウィジェット内の余白を詰める設定
======================================================== */
.infoitem {
    margin-bottom: 10px !important; /* ボックス間の隙間を詰める */
}

.infoitem .fujoho_custom_banner {
    height: auto !important; /* 固定高さを解除 */
    min-height: 250px;       /* 最小の高さだけ確保 */
}

/* 内部スクロール枠の高さ調整 */
.infoitem .fujoho_iphone_scroll_size_box {
    height: 250px !important; /* ここで中のコンテンツの表示領域を調整 */
}

/* ウィジェット直下のNews要素などとの間隔調整 */
.infoitem .news {
    padding-top: 5px !important;
}





/* ========================================================
   イベントバナー（スライダー）の表示崩れ防止設定
======================================================== */

/* ========================================================
   イベントバナー（スライダー）の表示崩れ防止設定（修正版）
======================================================== */

/* メインスライダーの枠組み */
.banner-inner01 .sliderbox {
    position: relative;
    overflow: hidden;
    /* ★高さを固定値から、画像に依存させる設定に変更 */
    height: auto; 
    width: 100%;
    /* 画像が読み込まれるまでの最小高さを確保（レイアウト崩れ防止） */
    min-height: 150px; 
}

.banner-inner01 .slider-main {
    padding: 0;
    margin: 0;
    list-style: none;
    /* display: flex; を追加して高さを揃える */
    display: flex;
    visibility: hidden; /* Slick初期化まで非表示 */
}

/* Slick初期化後に表示 */
.banner-inner01 .slider-main.slick-initialized {
    visibility: visible;
}

/* スライダー内のリストと画像の調整 */
.banner-inner01 .slider-main li {
    width: 100%; /* 念の為 */
}

.banner-inner01 .slider-main img {
    /* ★画像が親要素の幅いっぱいに広がり、高さは自動調整されるようにする */
    width: 100% !important;
    height: auto !important;
    display: block;
    /* fadeエフェクトを使用する場合、position: relative; を指定 */
    position: relative; 
}



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

.topfv {
	display: none;
	margin-top: 10px;
	
}
.toptab {
	display: none;
	margin-top: 0px;
}
.topsp {
	display: block;
	margin-top: 60px;
}
	
}


/* 019 */
.moreBUTTON {
	position: absolute;
	top:-100px;
	right:50px;
	display: block;
	width: 200px;
}
.moreBUTTON a {
    background: #56cdc0;
    border-radius: 60px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
	box-sizing: border-box;
    padding: 15px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	font-size: clamp(1.5rem, 1.6vw, 1.8rem);
}
.moreBUTTON a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.moreBUTTON a:hover:after {
  right: 1.4rem;
}

/* 019 */
.moreBUTTON02 {
	position: absolute;
	top:40px;
	right:50px;
	display: block;
	width: 200px;
}
.moreBUTTON02 a {
    background: #56cdc0;
    border-radius: 60px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
	box-sizing: border-box;
    padding: 15px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	font-size: clamp(1.5rem, 1.6vw, 1.8rem);
}
.moreBUTTON02 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.moreBUTTON02 a:hover:after {
  right: 1.4rem;
}

@media screen and (max-width: 834px) {
	
/* 019 */
.moreBUTTON {
	position: static;
	top:-100px;
	right:50px;
	display: block;
	width: 60%;
	margin: 15px auto 0;
}
.moreBUTTON a {
    background: #56cdc0;
    border-radius: 60px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
	box-sizing: border-box;
    padding: 15px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	font-size: clamp(1.6rem, 1.6vw, 1.8rem);
}
.moreBUTTON a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.moreBUTTON a:hover:after {
  right: 1.4rem;
}

/* 019 */
.moreBUTTON02 {
	position: static;
	top:40px;
	right:50px;
	width: 60%;
	margin: 15px auto 0;
}
.moreBUTTON02 a {
    background: #56cdc0;
    border-radius: 60px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
	box-sizing: border-box;
    padding: 15px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	font-size: clamp(1.6rem, 1.6vw, 1.8rem);
}
.moreBUTTON02 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.moreBUTTON02 a:hover:after {
  right: 1.4rem;
}

}

/* --------------------------　wrap　-------------------------- */

.content-inner00 {
	max-width: 1800px;
	margin: auto;
	padding: 0 2%;
	box-sizing: border-box;
	position: relative;
}

.content-inner {
	max-width: 1400px;
	margin: auto;
	padding: 0 2%;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
.content-inner02 {
	max-width: 1200px;
	margin: auto;
	padding: 0 2%;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1200px) {
	
.content-inner00 {
	max-width: 95%;
	margin: auto;
	padding: 0 2%;
	box-sizing: border-box;
}

.content-inner {
	max-width: 95%;
	margin: auto;
	padding: 0 0;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
.content-inner02 {
	max-width: 95%;
	margin: auto;
	padding: 0 0;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
}

@media screen and (max-width: 834px) {
	
.content-inner {
	max-width: 95%;
	margin: auto;
}
.content-inner02 {
	max-width: 95%;
	margin: auto;
}
}

/* --------------------------　背景アイテム　-------------------------- */
.bg-section {
  position: relative;
  min-height: 700px;
  overflow: hidden;
  /* 共通の背景設定を親要素に統合 */
  background-attachment: fixed;
  background-repeat: no-repeat;
  z-index: 0;

  /* 新しい1枚画像の背景設定 */
  background-image: url("../../images/common/bg.png");
  background-position: top center; /* 左右中央に配置 */
  background-size: cover; /* 画面いっぱいにカバー表示 */
}

/* 
 * 元のpseudo-elements (::before, ::after)のコードは
 * 完全に削除していただいて大丈夫です。
 */

@media screen and (max-width: 1260px) {
  .bg-section {
    min-height: 700px; /* 必要に応じて調整 */
    /* 背景画像の設定はPCサイズから継承されます */
    /* 必要ならサイズ調整を行う（例: background-size: 100% auto;） */
  }
}

@media screen and (max-width: 834px) {
  .bg-section {
    min-height: 700px; /* 必要に応じて調整 */
    /* 背景画像の設定は継承されます */
  }
}


.banner-inner01 {
	max-width: 1600px;
	position: relative;
	z-index: 1;
	margin: 0 auto 0px;
}
.banner-inner02 {
	position: relative;
	z-index: 1;
	max-width: 1600px;
	margin: 0 auto 50px;
}


.sliderbox .slick-prev {
    left: 5% !important;
	z-index: 2;
}
.sliderbox .slick-next {
    right: 5% !important;
	z-index: 2
}
@media screen and (max-width: 834px) {
	
.banner-inner01 {
	max-width: 1600px;
	position: relative;
	z-index: 1;
	margin: 0 2% 0px;
}
.banner-inner02 {
	position: relative;
	z-index: 1;
	max-width: 1600px;
	margin: -20px 0% 10px;
}

	
}

	
/* 001 */
.blockBUTTON {
	margin: 40px auto 0;
}
.blockBUTTON a {
    background: linear-gradient(90deg, #e85a73, #e89a3a);
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 350px;
    padding: 10px 25px;
    color:#fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
	box-sizing: border-box;
	margin-bottom: 5px;
	font-size: clamp(1.5rem, 1.6vw, 1.8rem);
}
.blockBUTTON a:hover {
    color: #FFF;
	opacity: 0.8;
}
.blockBUTTON a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.blockBUTTON a:hover:after {
    border-color: #FFF;
}
.blockBUTTON i {
    position: absolute;
	left: 20px;
	
}






/* --------------------------　top01　-------------------------- */


.top01 {
	padding: 50px 0;
}

.top01 h2 {
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.top01 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	background: linear-gradient(
    to bottom,
    #fad126 30%,
    #ca332f 40%,
    #0786cf 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.top01 h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
	position: relative;
	z-index: 1;
}

.sliderbox {
	padding-bottom: 0px;
}

.slider li {
	padding: 0 !important;
	margin: 0 !important;
	
}
.slider img {
	border: 6px solid #fff;
	box-sizing: border-box;
}




@media screen and (max-width: 834px) {
	
.banner-inner {
	max-width:100%;
	margin: -20px auto 20px;
}

	
.top01 {
	padding: 25px 0;
}

.top01 h2 {
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.top01 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	background: linear-gradient(
    to bottom,
    #fad126 30%,
    #ca332f 40%,
    #0786cf 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.top01 h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
}
	
.sliderbox {
	padding: 0;
	padding-bottom: 0px;
	width: 100% !important;
}
.slider {
		padding: 0 !important;
	margin: 0 !important;
	}
.slider li {
	padding: 0 !important;
	margin: 0 !important;
	
}

	
}



/* --------------------------　top02　-------------------------- */

.top02 {
	background: url("../../../common/images/common/headerBG.jpg") right top;
	background-position: center top;
	padding: 20px 0 60px 0;
}

.top02 h2 {
	position: relative;
	z-index: 1;
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
	font-weight: 500;
	border-bottom: 3px solid #fae0ed;
	display: flex;
	justify-content: space-between;
}
.top02 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
	font-family: "Bebas Neue", sans-serif;
}
.top02 h2 .H2sub {
font-size: clamp(1.2rem, 1.5vw, 1.8rem);
	margin-left: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
	position: relative;
	margin-top: 35px;
	font-weight: 600;
}


.top02box {
	display: flex;
	justify-content: space-between;
	
}
.top02item_l {
	width: 54%;
	padding: 25px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
	
}
.top02item_r {
	width: 44%;
	padding: 25px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
}

/* --　ピックアップスライダ -- */

.toppickup {
	position: relative;
	
}
.pickup-item {
	position: relative;
	box-sizing: border-box;
	display: flex !important;
	justify-content: space-between;
}


.pickup-item .ph {
	width: 50%;
}
.pickup-item .txtbox {
	width: 48%;
	line-height: 1.4;
}
.pickup-item .ph {
	position: relative;
}
.pickup-item .ph img {
	border-radius: 10px;
}
.pickup-item .new {
	position: absolute;
	width:55px;
	top:3px;
	right: 3px;
	z-index: 1;
}



.toppickup .txtbox .name {
	font-size: clamp(1.8rem, 2.5vw, 3rem);
	font-weight: bold;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
}
.toppickup .txtbox .name span {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.toppickup .txtbox .size {
	font-size: clamp(1.3rem, 1.6vw, 1.8rem);
	margin-bottom: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
}

.toppickup .txtbox .icon {
	margin-bottom: 5px;
}
.iconBOX  {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}
.iconBOX div  {
	width: 49%;
}


.toppickup .txtbox .comment {
	font-size: clamp(1.3rem, 1.4vw, 1.5rem);
	 display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 10;
    overflow: hidden;
	line-height: 1.5;
	border-radius: 4px;
	
	
}


/* --　プレミアムスライダ -- */

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

.premireSLIDE li {
	width: 49.5%;
	position: relative;
	box-sizing: border-box;
	margin: 0 5px;
}
.premireSLIDE .ph {
	position: relative;
	margin-bottom: 5px;
}

.premireSLIDE .ph img {
	border-radius: 10px;
}



.premireSLIDE .new {
	position: absolute;
	width:50px;
	top:3px;
	right: 3px;
	z-index: 1;
}


.premireSLIDE .name {
	font-size: clamp(1.8rem, 2vw, 2.2rem);
	font-weight: bold;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
	text-align: center;
}
.premireSLIDE .name span {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.premireSLIDE .size {
	font-size: clamp(1.2rem, 1.4vw, 1.6rem);
	margin-bottom: 2px;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}

.premireSLIDE .icon {
	margin-bottom: 5px;
}

/* --------------------------　top03　-------------------------- */


.top03 {
	padding: 50px 0;
	background: #fceff6;
}

.top03 h2 {
	position: relative;
	z-index: 1;
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.top03 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
}
.top03 h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}

.newfaceSLIDE .slick-prev {
    left: -1% !important;
	z-index: 2;
}
.newfaceSLIDE .slick-next {
    right: 1.5% !important;
	z-index: 2
}


.newfaceSLIDE,
.rankingSLIDE,
.castlist {
	display: flex;
	flex-wrap: wrap;
	
}

.newfaceSLIDE li,
.rankingSLIDE li {
	width: 19%;
	position: relative;
	box-sizing: border-box;
	margin: 0 5px;
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 10px;
}



.newfaceSLIDE .ph,
.rankingSLIDE .ph,
.castlist .ph {
	position: relative;
	margin-bottom: 5px;
}

.newfaceSLIDE .ph img,
.rankingSLIDE .ph img,
.castlist .ph img {
	border-radius: 8px;
}

.newfaceSLIDE .new,
.rankingSLIDE .new,
.castlist .new {
	position: absolute;
	width:50px;
	top:3px;
	right: 3px;
	z-index: 1;
}


.newfaceSLIDE .name,
.rankingSLIDE .name,
.castlist .name {
	font-size: clamp(1.8rem, 2vw, 2.2rem);
	font-weight: bold;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
	text-align: center;
}
.newfaceSLIDE .name span,
.rankingSLIDE .name span,
.castlist .name span {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.newfaceSLIDE .size,
.rankingSLIDE .size,
.castlist .size {
	font-size: clamp(1.2rem, 1.4vw, 1.6rem);
	margin-bottom: 2px;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}

.newfaceSLIDE .icon,
.rankingSLIDE .icon,
.castlist .icon {
	margin-bottom: 5px;

}




/* --------------------------　top05　-------------------------- */


.top05 {
	background: url("../../../common/images/top/bg_ht.jpg") center top;
	background-position: center top;
	padding: 40px 0 60px 0;
}

.top05 h2 {
	position: relative;
	z-index: 1;
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
	font-weight: 500;
	border-bottom: 3px solid #fae0ed;
	display: flex;
	justify-content: space-between;
}
.top05 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
	font-family: "Bebas Neue", sans-serif;
}
.top05 h2 .H2sub {
font-size: clamp(1.2rem, 1.5vw, 1.8rem);
	margin-left: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
	position: relative;
	margin-top: 35px;
	font-weight: 600;
}

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

.infoitem {
	width: 49%;
	padding: 25px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
}


.infobox .news {
	box-sizing: border-box;
}



.infobox .wrap {
	overflow:auto;
	width: 100%;
	height:320px;
	max-height: 400px;	
	padding-right: 15px;
	box-sizing: border-box;
}
.infobox .title {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	padding: 5px 10px;
	margin-bottom: 5px;
	background: #f6618f;
	box-sizing: border-box;
	color:#fcf300;
}
.infobox .date {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	margin-bottom: 10px;
	box-sizing: border-box;
}

.infocontent {
	background: #7dc1e9;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 10px;
}
.infocontent h4 {
	font-size: clamp(1.5rem, 1.6vw, 1.8rem);
	text-align: center;
	color:#fff;
	margin-bottom: 10px;
}
.Inner {
	background: #fff;
	padding: 15px;
	box-sizing: border-box;
}

.infocontent figure {
	width: 60%;
	margin: 20px auto;
}

.infobox p {
	font-family: 'Noto Sans JP',"Yu Gothic","游ゴシック",YuGothic,"Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"MS Pゴシック",Helvetica,Arial,Verdana,sans-serif;
	line-height: 1.6;
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
}
.infobox .inner {
	overflow:auto;
	width:auto;
	height:340px;
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
}
.banner img {
	margin-bottom: 5px;
}




/* --------------------------　top04　-------------------------- */

.top04 {
	background: url("../../../common/images/top/top04.jpg")no-repeat right top;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 40px 0 60px 0;
	background-attachment: fixed;
}


.top04 h2 {
	position: relative;
	z-index: 1;
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.top04 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#bea163;
}
.top04 h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}

.rankICON {
	position: absolute;
	top:-8px;
	left: -8px;
	width: 80px;
	z-index: 3;
}


/* 019 */
.morelink a {
    background-image: linear-gradient(141deg, rgba(20, 20, 20, 1), rgba(0, 0, 0, 1));
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 40px auto 0;
    max-width: 280px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 300;
	font-size: 1.6rem;
	border: 1px solid #b39c77;
	display: flex;
  justify-content: center;
 
	
}
.morelink a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px #b39c77;
  border-right: solid 2px #b39c77;
  transform: translateY(-50%) rotate(45deg);
}
.morelink a:hover {
 
}
.morelink a:hover:after {
  right: 1.4rem;
}
.morelink i {
  margin-right: 10px;
}


/* --------------------------　top06　-------------------------- */

.top06  {
	background: url("../../../common/images/common/headerBG.jpg") right top;
	background-position: center top;
	padding: 20px 0 60px 0;

}

.top06 h2 {
	position: relative;
	z-index: 1;
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.top06 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
}
.top06 h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}


.todayDATE {
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
	font-size: clamp(1.5rem, 1.8vw, 2rem);
	text-align: center;
	border: 2px solid #b6c6af;
	border-radius: 60px;
	width: 30%;
	margin: auto;
	margin-bottom: 30px;
}


.castlist li {
	width: 24%;
	position: relative;
	box-sizing: border-box;
	margin: 0 0.5% 10px;
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 10px;
}

.schTIME {
    border: 2px solid #ee83ac !important;
	border-radius: 60px;
	color:#ee83ac;
	text-align: center;
	font-size: clamp(1.2rem, 1.4vw, 1.8rem);
	padding:3px 3px 5px 3px;
	box-sizing: border-box;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
	line-height: 1;
}

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

/* --------------------------　top02　-------------------------- */

.top02 {
	background: url("../../../common/images/common/headerBG.jpg") right top;
	background-position: center top;
	padding: 20px 0 25px 0;
}

.top02 h2 {
	font-size: clamp(4rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 15px;
	font-weight: 500;
	border-bottom: 3px solid #fae0ed;
	display: flex;
	justify-content: space-between;
}
.top02 h2 .H2main {
	position: relative;
	z-index: 1;
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
	font-family: "Bebas Neue", sans-serif;
}
.top02 h2 .H2sub {
font-size: clamp(1.4rem, 1.5vw, 1.8rem);
	margin-left: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
	position: relative;
	margin-top: 18px;
	font-weight: 600;
}


.top02box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	
}
.top02item_l {
	width: auto;
	padding: 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
	
}
.top02item_r {
	width: auto;
	padding: 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
}

/* --　ピックアップスライダ -- */

.toppickup {
	position: relative;
}
.pickup-item {
	position: relative;
	box-sizing: border-box;
	display: flex !important;
	flex-direction: column;
	justify-content: space-between;
}


.pickup-item .ph {
	width: auto;
}
.pickup-item .txtbox {
	width: auto;
	line-height: 1.4;
}
.pickup-item .ph {
	position: relative;
	margin-bottom: 10px;
}
.pickup-item .ph img {
	border-radius: 6px;
}
.pickup-item .new {
	position: absolute;
	width:55px;
	top:3px;
	right: 3px;
	z-index: 1;
}



.toppickup .txtbox .name {
	font-size: clamp(2rem, 2.5vw, 3rem);
	font-weight: bold;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
	text-align: center;
}
.toppickup .txtbox .name span {
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.toppickup .txtbox .size {
	font-size: clamp(1.4rem, 1.6vw, 1.8rem);
	margin-bottom: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}

.toppickup .txtbox .icon {
	margin-bottom: 5px;
}
.iconBOX  {
	display: flex;
	justify-content: space-between;
	margin-bottom: 5px;
}
.iconBOX div  {
	width: 49%;
}


.toppickup .txtbox .comment {
	font-size: clamp(1.4rem, 1.4vw, 1.5rem);
	 display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 10;
    overflow: hidden;
	line-height: 1.5;
	border-radius: 4px;
	
}


/* --　プレミアムスライダ -- */

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

.premireSLIDE li {
	width: 49.5%;
	position: relative;
	box-sizing: border-box;
	margin: 0 5px;
}
.premireSLIDE .ph {
	position: relative;
	margin-bottom: 5px;
}

.premireSLIDE .ph img {
	border-radius: 10px;
}



.premireSLIDE .new {
	position: absolute;
	width:50px;
	top:3px;
	right: 3px;
	z-index: 1;
}


.premireSLIDE .name {
	font-size: clamp(2rem, 2vw, 2.2rem);
	font-weight: bold;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
	text-align: center;
}
.premireSLIDE .name span {
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.premireSLIDE .size {
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	margin-bottom: 2px;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
	margin-bottom: 5px;
}

.premireSLIDE .icon {
	margin-bottom: 2px;
}

/* --------------------------　top03　-------------------------- */


.top03 {
	padding: 25px 0;
	background: #fceff6;
}

.top03 h2 {
	font-size: clamp(4rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
}
.top03 h2 .H2main {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
}
.top03 h2 .H2sub {
font-size: clamp(1.4rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}

.newfaceSLIDE .slick-prev {
    left: -1% !important;
	z-index: 2;
}
.newfaceSLIDE .slick-next {
    right: 1.5% !important;
	z-index: 2
}


.newfaceSLIDE,
.rankingSLIDE,
.castlist {
	display: flex;
	flex-wrap: wrap;
	
	
}
.newfaceSLIDE li,
.rankingSLIDE li {
	width: 19%;
	position: relative;
	box-sizing: border-box;
	margin: 0 5px;
	background: #fff;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 10px;
}

.newfaceSLIDE .ph,
.rankingSLIDE .ph,
.castlist .ph {
	position: relative;
	margin-bottom: 5px;
}

.newfaceSLIDE .ph img,
.rankingSLIDE .ph img,
.castlist .ph img {
	border-radius: 3px;
}

.newfaceSLIDE .new,
.rankingSLIDE .new,
.castlist .new {
	position: absolute;
	width:40px;
	top:2px;
	right: 2px;
	z-index: 1;
}


.newfaceSLIDE .name,
.rankingSLIDE .name,
.castlist .name {
	font-size: clamp(1.8rem, 2vw, 2.2rem);
	font-weight: bold;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	color:#f6618f;
	text-align: center;
	letter-spacing: 0;
}
.newfaceSLIDE .name span,
.rankingSLIDE .name span,
.castlist .name span {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	color:#251f19;
}
.newfaceSLIDE .size,
.rankingSLIDE .size,
.castlist .size {
	font-size: clamp(1.2rem, 1.4vw, 1.6rem);
	margin-bottom: 2px;
	line-height: 1.5;
	font-family: "Zen Maru Gothic", sans-serif;
	text-align: center;
}

.newfaceSLIDE .icon,
.rankingSLIDE .icon,
.castlist .icon {
	margin-bottom: 2px;

}

/* ========================================================
   10文字を超えた場合に「...」で省略する設定
======================================================== */
.text-ellipsis,
.castlist .icon
.name, /* キャッチや名前など、該当するクラス名に変更してください */
.icon {
    display: inline-block;
    max-width: 100%;       /* 親要素からはみ出さないように制限 */
    white-space: nowrap;   /* 改行させずに1行で表示 */
    overflow: hidden;      /* はみ出た部分を隠す */
    text-overflow: ellipsis; /* はみ出た部分を「…」にする */
}


/* --------------------------　top05　-------------------------- */


.top05 {
	background: url("../../../common/images/top/bg_ht.jpg") center top;
	background-position: center top;
	padding: 25px 0 25px 0;
}

.top05 h2 {
	font-size: clamp(4rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
	font-weight: 500;
	border-bottom: 3px solid #fae0ed;
	display: flex;
	justify-content: space-between;
}
.top05 h2 .H2main {
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
	font-family: "Bebas Neue", sans-serif;
}
.top05 h2 .H2sub {
font-size: clamp(1.4rem, 1.5vw, 1.8rem);
	margin-left: 10px;
	font-family: "Zen Maru Gothic", sans-serif;
	position: relative;
	margin-top: 21px;
	font-weight: 600;
}

.infobox {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.infoitem {
	width: auto;
	padding: 25px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: inset 0 0 0 6px #fceff6;
	margin-bottom: 10px;
}

.infobox .news {
	box-sizing: border-box;
}

.infobox .wrap {
	overflow:auto;
	width: 100%;
	height:300px;
	padding-right: 15px;
	box-sizing: border-box;
}
.infobox .title {
	font-size: clamp(1.5rem, 1.4vw, 1.6rem);
	padding: 5px 10px;
	margin-bottom: 5px;
	background: #f6618f;
	box-sizing: border-box;
	color:#fcf300;
}
.infobox .date {
	font-size: clamp(1.3rem, 1.4vw, 1.6rem);
	margin-bottom: 10px;
	box-sizing: border-box;
}

.infocontent {
	background: #7dc1e9;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 6px;
}
.infocontent h4 {
	font-size: clamp(1.5rem, 1.6vw, 1.8rem);
	text-align: center;
	color:#fff;
	margin-bottom: 10px;
}
.Inner {
	background: #fff;
	padding: 15px;
	box-sizing: border-box;
}

.infocontent figure {
	width: 70%;
	margin: 20px auto;
}

.infobox p {
	font-family: 'Noto Sans JP',"Yu Gothic","游ゴシック",YuGothic,"Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"MS Pゴシック",Helvetica,Arial,Verdana,sans-serif;
	line-height: 1.6;
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
}
.infobox .inner {
	overflow:auto;
	width:auto;
	height:300px;
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
}
.banner img {
	margin-bottom: 5px;
}




/* --------------------------　top04　-------------------------- */

.top04 {
	background: url("../../../common/images/top/top04.jpg")no-repeat right top;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 25px 0 25px 0;
	background-attachment: fixed;
}


.top04 h2 {
	font-size: clamp(4rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
}
.top04 h2 .H2main {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#bea163;
}
.top04 h2 .H2sub {
font-size: clamp(1.4rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}

.rankICON {
	position: absolute;
	top:-8px;
	left: -8px;
	width: 40px;
	z-index: 3;
}


/* 019 */
.morelink a {
    background-image: linear-gradient(141deg, rgba(20, 20, 20, 1), rgba(0, 0, 0, 1));
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 20px auto 0;
    max-width: 280px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 300;
	font-size: 1.6rem;
	border: 1px solid #b39c77;
	display: flex;
  justify-content: center;
 
	
}
.morelink a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px #b39c77;
  border-right: solid 2px #b39c77;
  transform: translateY(-50%) rotate(45deg);
}
.morelink a:hover {
 
}
.morelink a:hover:after {
  right: 1.4rem;
}
.morelink i {
  margin-right: 10px;
}


/* --------------------------　top06　-------------------------- */

.top06  {
	background: url("../../../common/images/common/headerBG.jpg") right top;
	background-position: center top;
	padding: 25px 0 25px 0;

}

.top06 h2 {
	font-size: clamp(4rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
}
.top06 h2 .H2main {
	font-family: "Bebas Neue", sans-serif;
	font-weight: 500;
	 text-align: center;
	color:#f6618f;
}
.top06 h2 .H2sub {
font-size: clamp(1.4rem, 1.4vw, 1.6rem);
display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
}
	
.todayDATE {
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
	font-size: clamp(1.5rem, 1.8vw, 2rem);
	text-align: center;
	border: 2px solid #b6c6af;
	border-radius: 60px;
	width:70%;
	margin: auto;
	margin-bottom: 15px;
}
	
.castlist {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.castlist li {
	width: 48.8%;
	position: relative;
	box-sizing: border-box;
	margin: 0 0 10px;
	background: #fff;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 10px;
	
}

.schTIME {
    border: 2px solid #ee83ac !important;
	border-radius: 60px;
	color:#ee83ac;
	text-align: center;
	font-size: clamp(1.2rem, 1.4vw, 1.8rem);
	padding:3px 3px 5px 3px;
	box-sizing: border-box;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 600;
	line-height: 1;
}
	
}



/* --------------------------　subCONTENT　-------------------------- */

.subCONTENT {
	padding: 30px 0;
	position: relative;
	margin-top: -10px;
}

/*.subCONTENT:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;

  width: 40%; 
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg04.png");
  background-repeat: no-repeat;
  background-size: contain;

  z-index: -1;
}

.subCONTENT:after {
  content: '';
  position: absolute;
  bottom: -5%;
  right: 0;

  width: 40%;
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg05.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right bottom;

  pointer-events: none;
  z-index: -1;
}*/


.subCONTENT h2 {
	font-size: clamp(3rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 40px;
}
.subCONTENT h2 .H2main {
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	background: linear-gradient(
    to bottom,
    #fad126 30%,
    #ca332f 40%,
    #0786cf 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.subCONTENT h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
}


@media screen and (max-width: 1260px) {
	
.subCONTENT {
	padding: 30px 0;
	position: relative;
	margin-top: -10px;
}
/*.subCONTENT:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;

  width: 50%;
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg04.png");
  background-repeat: no-repeat;
  background-size: contain;

  z-index: -1;
}

.subCONTENT:after {
  content: '';
  position: absolute;
  bottom: -5%;
  right: 0;

  width: 50%;
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg05.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right bottom;

  pointer-events: none;
  z-index: -1;
}*/

}

@media screen and (max-width: 834px) {
	
.subCONTENT {
	padding: 20px 0;
	position: relative;
	margin-top: -10px;
}

/*.subCONTENT:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;

  width: 60%;
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg04.png");
  background-repeat: no-repeat;
  background-size: contain;

  z-index: -1;
}

.subCONTENT:after {
  content: '';
  position: absolute;
  bottom: -5%;
  right: 0;

  width: 60%;
  aspect-ratio: 200 / 269;

  background-image: url("../../../common/images/top/bg05.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right bottom;

  pointer-events: none;
  z-index: -1;
}*/


.subCONTENT h2 {
	font-size: clamp(3.6rem, 5vw, 6rem);
	padding: 0;
	margin: 0;
	text-align: center;
	line-height: 1.2;
	margin-bottom: 20px;
	position: relative;
	z-index: 1;
}
.subCONTENT h2 .H2main {
	font-family: "Charis SIL", serif;
	font-weight: 500;
	 text-align: center;
	background: linear-gradient(
    to bottom,
    #fad126 30%,
    #ca332f 40%,
    #0786cf 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.subCONTENT h2 .H2sub {
font-size: clamp(1.2rem, 1.4vw, 1.6rem);
display: block;
}
	
}


.mediaicon {
	display: flex;
	justify-content: center;
	margin: 5px 0;
}
.mediaicon i {
	margin: 0 2px;
	font-size: clamp(1.4rem, 1.4vw, 2rem);
	color:#fc338d;
}






.H2main {
    font-family: 'Zen Maru Gothic', sans-serif !important;
    font-size: 3.8rem !important;
    color: #ff85a2 !important;
    font-weight: 900 !important;
    letter-spacing: 1px;
    text-shadow: 2px 2px 0px #fff, 4px 4px 0px #ffd1dc; /* ポップな立体文字風 */
    border-bottom: none !important;
}
/* おしゃれな小さめのアクセントラインを下につける場合 */
.H2main::after {
    content: "";
    display: block;
    width: 50px;
    height: 2px;
    background: #d4af37;
    margin: 8px auto 0 auto;
}









/* ========================================================
   スライダー表示崩れ 強制修正CSS（優先度を高く設定）
======================================================== */

/* 1. メインスライダーの枠組みを強制的にレスポンシブ化 */
.banner-inner01 .sliderbox {
    position: relative !important;
    overflow: hidden !important;
    /* 高さを固定せず、画像のアスペクト比に合わせて自動伸縮させる */
    height: auto !important;
    width: 100% !important;
    /* 画面幅に対する縦横比（例：横10:縦4の場合 40%）を指定 */
    aspect-ratio: 10 / 4; 
    margin: 0 auto !important;
}

/* 古いブラウザ向けの aspect-ratio フォールバック（高さ計算用） */
.banner-inner01 .sliderbox::before {
    content: "";
    display: block;
    padding-top: 40%; /* 10:4の比率の場合 */
}

/* 2. Slickのコンテナを強制的にフィットさせる */
.banner-inner01 .slider-main,
.banner-inner01 .slider-main .slick-list,
.banner-inner01 .slider-main .slick-track {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* 3. スライダー内の画像を強制的に枠に収める（重要） */
.banner-inner01 .slider-main img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important; /* ★画像を伸縮させて全体を表示する */
    /* object-fit: cover; にすると上下が切れる代わりに隙間がなくなります。好みで調整してください */
    object-position: center !important; /* 画像を中央に配置 */
    border: none !important;
}

/* 4. フェードエフェクト使用時の li 設定 */
.banner-inner01 .slider-main li {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0;
    z-index: 0;
}

/* アクティブなスライドのみ表示 */
.banner-inner01 .slider-main li.slick-active {
    opacity: 1;
    z-index: 1;
}









