/*ロゴ

/* PC */
@media only screen and (min-width: 1025px) {
.t-logoSp40 .siteTitle__logo {
    height: 65px;
}
}
	

	

/* スマホ　*/
@media only screen and (max-width: 1024px) {
.t-logoSp40 .siteTitle__logo {
    height: 55px;
}
	
}
	



	

	
/*関連記事PC */

@media only screen and (min-width: 1025px) {
	

.related__item .archive__contents {
    width: 100%;
		margin-top: 160px;
	position: absolute;
}
	
	
.related__item .archive__contents {
margin-left:0px;
	width: calc(100% - 50px);
}
	
	
	
.related__item {
width: calc(25% - 15px);
    margin-right: 15px;
	    display: flex;
}
	
.related__list {
display: flex;
flex-wrap: wrap;
}
	
.related__item .eyecatch {
max-width: 100%;
}	
	
	
	
.related__item .heading-secondary {
width: 25%;
font-size: 1.5rem;
}	
	
}



/*ヘッダー半透明化 */
.l-header-clone.is-show{
background: rgba(255,255,255,0.85);
}	
	




	



/*動画ズレ修正 */
.mejs__controls {
height: 50px !important;
}	

.mejs__time {
padding-top: 5px !important;
}	

.mejs__time-rail {
padding-top: 5px !important;
}	

.mejs__button {
margin-top: 20px !important;
}	

.mejs__overlay-button {
margin-top: -30px !important;
}	


/*コンタクトフォーム */

.wpcf7 input  {
    width: 100%;
}

.wpcf7-textarea   {
    width: 100%;
}







/*記事見出し */
.h2-post {
		margin-bottom:15px;
	border-bottom: 1px solid #f0bdc4; /* 下線 */
	color: #ff99ac; /* 文字色 */
	padding: 7px 10px 10px 50px; /* 上・右・下・左の余白 */
	position: relative;
}
.h2-post:before {
	background-image: linear-gradient(180deg, #ff9a8b 0%, #ff6a88 55%, #ff99ac 100%); /* 円のグラデーション */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 5px;
	width: 30px; /* 円の幅 */
	height: 30px; /* 円の高さ */
}
.h2-post:after {
	background-color: #fff; /* 白抜き円 */
	border-radius: 50%;
	content: '';
	display: block;
	position: absolute;
	top: 15px;
	left: 10px;
	width: 20px; /* 白抜き円の幅 */
	height: 20px; /* 白抜き円の高さ */
}




.h3-post {
			margin-bottom:15px;
	color: #ff99ac; /* 文字色 */
	padding: 0px 0px 0px 40px; /* 上・右・下・左の余白 */
	position: relative;
}
.h3-post:before {
	background-color: #ef858c; /* 左側の線の色 */
	border-radius: 5px;
	content: '';
	position: absolute;
	top: 0;
	left: 18px; /* 左端からの位置 */
	width: 5px; /* 左側の線の幅 */
	height: 100%;
}




.h3-course {
  color: #505050;/*文字色*/
  padding: 0.5em;/*文字周りの余白*/
  display: inline-block;/*おまじない*/
  line-height: 1.3;/*行高*/
  background: #dbebf8;/*背景色*/
  vertical-align: middle;
margin-bottom:15px;
	width:100%;

}

.h3-course:before {
  content: '●';
  color: white;
  margin-right: 8px;
}


/*動画 */
.wp-block-video {
 width:100%!important;
	height: 100%!important;
}
}






















/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:500px){
.inquiry th,.inquiry td {
 display:block!important;
 width:100%!important;
 border-top:none!important;
 -webkit-box-sizing:border-box!important;
 -moz-box-sizing:border-box!important;
 box-sizing:border-box!important;
}
.inquiry tr:first-child th{
 border-top:1px solid #d7d7d7!important;
}
/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
font-size:10px;
}}
/*見出し欄*/
.inquiry th{
 text-align:left;
 font-size:14px;
 color:#444;
 padding-right:5px;
 width:30%;
 background:#f7f7f7;
 border:solid 1px #d7d7d7;
}
/*通常欄*/
.inquiry td{
 font-size:13px;
 border:solid 1px #d7d7d7;	
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:7px;
 padding:5px;
 background:#ff9393;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:7px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 display:block;
}
/*送信ボタンのデザイン変更*/
#formbtn{
	text-align:center!important;
 display: block;
    padding-top: 0.667em;
    padding-right: 1.333em;
    padding-bottom: 0.667em;
    padding-left: 1.333em;
border-radius:30px;
 background:#f78da7;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
border-radius: 1.55em;
 border: none;
  text-align: center;
  position: absolute;
}

/* PC */
@media only screen and (min-width: 568px) 
}	#formbtn{
	 margin-left:160px;
 width:70%;
}


/* スマホ */
@media only screen and (max-width: 599px) 
}
#formbtn{
 width:100%;
}
}




/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:#fff;
 color:#ffaa56;
}

input[type="submit"], input[type="reset"], input[type="button"], button{
  cursor: pointer;
}






@media only screen and (max-width: 768px){
.archive {
	width: calc(100%);
}
#viewCard:checked ~ .archive .archive__item, #viewNormal:checked ~ .archive .archive__item, #viewWide:checked ~ .archive .archive__item {
	width: calc(50%);
	margin-right: 8px;
}
#viewNormal:checked ~ .archive .archive__item {
	display: unset;
	align-items: unset;
}
#viewNormal:checked ~ .archive .eyecatch {
	max-width:100%;
}
#viewNormal:checked ~ .archive .archive__contents {
	margin-left: 0;
}
#viewCard:checked ~ .archive .archive__item-shadow, #viewNormal:checked ~ .archive .archive__item-shadow, .archive__item-shadow {
	padding: 10px;
}
.archive__contents {
	padding: 0 5px;
}
.controller__viewLabel{
	display:none
}
}
@media only screen and (max-width: 480px){
#viewCard:checked ~ .archive .archive__item, #viewNormal:checked ~ .archive .archive__item, #viewWide:checked ~ .archive .archive__item {
	width: 100%;
}
.archive__item {
	margin-bottom:30px;
}
}








/*スマホ下部コントローラー*/
.controllerFooter {
background: rgba(255,255,255,0.85);
}








/*お気に入りボタン

/* PC スマホ */

.simplefavorite-button {
	cursor: pointer;
}


.favorites-unfavorited-box {
		text-align:center;
	font-size:14px;
margin-bottom: 10px;

}

.favorites-favorited-box{
	font-size:14px;
margin-bottom: 10px;

}


.favorites-unfavorited {
	color: #fafafa;
	text-align:center;
border: solid 1px;
	padding:10px 0px 10px 0px;


}

.favorites-favorited {
	cursor: pointer;
	color: #fafafa;
	text-align:center;
border: solid 1px;
	padding:10px 0px 10px 0px;
	border-radius:30px;

}


/* PC */
@media only screen and (min-width: 1025px) {
.favorites-unfavorited-box {
		width:70%;
		text-align:center;
	margin-left:48px;
			background:#ffffff;
}
	
.favorites-favorited-box{
		width:70%;
		text-align:center;
	margin-left:48px;
				background:#ffffff;
}	

}
	

/* スマホ　*/
@media only screen and (max-width: 1024px) {
.favorites-unfavorited-box {
		width:100%;
	font-size:0.9em;
			text-align:center;
				background:#ffffff;
}

	
.favorites-favorited-box{
		width:100%;
		font-size:0.9em;
	text-align:center;
				background:#ffffff;
}
	
}

/*お気入リストページ*/

.favorites-list li {
  list-style: none!important;
		padding-left: 0!important;
		     clear: both;
}

/* PC */
@media only screen and (min-width: 1025px) {
.favorites-list img {
width: 200px;height: 130px
	;object-fit: cover;border: 0;
	display: block;
}
	


}
	

/* スマホ　*/
@media only screen and (max-width: 1024px) {
.favorites-list li img {
width: 100%;height:100%;
	object-fit: cover;border: 0;
	display: block;
}
	
	.favorites-list li img {
    width: 100%;
}

}


.content a {
    color: #777;
}













/* サムネイル上のカテゴリーリンク
--------------------------------------*/
.eyecatch__cat {
background: rgba(255,255,255,0.7);
	  box-shadow: 2px 2px 4px;
}

.eyecatch__cat a {
		color:#333;
}	

/* PC */
@media only screen and (min-width: 1025px) {
	


	
.searchHead {
    width: 1150px;
    margin-left: auto;
    margin-right: auto;
}	
	
	
}	

/* パンくず
--------------------------------------*/
.breadcrumb {
border-bottom: none;
	background: #fff;
}



/* お気に入りリスト
------------------------*/
ul.favorites-list {
	display: flex;
	flex-wrap: wrap;
}

ul.favorites-list li {
  width: calc(100% / 3.167);
}

ul.favorites-list li:first-child {
	margin-top: 1rem;
}

ul.favorites-list li {
	margin: 1rem 10px;
  display: flex;
	flex-direction: column;
}

ul.favorites-list li .favorites_button_okiniiripage {
	margin-top: -75px;
}

ul.favorites-list li::before {
	display: none;
}

ul.favorites-list li .wp-post-image {
	width: 100%;
	margin-right: 0px;
}

@media (max-width: 480px) {
	ul.favorites-list li {
      width: calc(100% / 2.4);
	}
}

.favorites-list-text {
	font-size: 1.4rem;
	color: inherit;
	line-height: 1.5;
  font-weight: 700;
}

.favorites-list-text a {
  color: #222;
	transition: .15s;
  display: inline-block;
  max-width: 100%;
}

.favorites-list-text a:hover {
	color: #bababa;
}

.favorites-list-thumbnail img {

	object-fit: cover !important;
}

@media (max-width: 480px) {
	.favorites-list-thumbnail img {

	  object-fit: cover !important;
  }
}



/*---------------------------------------
/*THOR
---------------------------------------*/


/*PC抜粋文削除*/
#viewCard:checked~.archive .archive__contents .phrase {display: none;}

.searchHead {
    box-shadow: 0px 2px 4px rgb(0 0 0 / 40%) inset;
}





.catname  {
	margin-bottom:10px;
	line-height: 1.7em;
}



/* PC */
@media only screen and (min-width: 1025px) {
	
.archive__item {
width: 278px!important;
	margin-right: 10px!important;
}	
}	



@media only screen and (max-width: 1024px) {
.archive .archive__item {
    width: 47%!important;
}
}




/* live!ボタン
------------------------*/

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
	
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;
}

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
		white-space: nowrap;
}

a.btn-flat {
  overflow: hidden;

  padding: 1.5rem 6rem;

  color: #fff;
  border-radius: 0;
  background: #c95095;

}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 23px;
  left: 0;

  width: 137%;
  height: 500%;

  content: "";
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: translateX(-98%) translateY(-25%) rotate(45deg);
  transform: translateX(-98%) translateY(-25%) rotate(45deg);

  background: #00b7ee;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(-9%) translateY(-25%) rotate(45deg);
  transform: translateX(-9%) translateY(-25%) rotate(45deg);
}



.movie-message {
margin:10px 0px 10px;
	 line-height:1.3em;
}

.movie-thumnail {

}

.movie-thumnail img {
        width: 100%;

}

.movie-thumnail-sakujyo {
  position: relative;
}

.movie-thumnail-sakujyo img{
filter: grayscale(100%);
}


.movie-thumnail-sakujyo-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	text-shadow: 2px 2px 3px #000000;
	text-align:center;
	font-size:5em;
	        color:#ffffff;
		white-space: nowrap;
}


.category_name {
        margin-bottom: 10px;
	    text-align: center;
}

a.btn-flat {
        font-size: 1em;
}




/* スマホ　*/
@media only screen and (max-width: 1024px) {
a.btn-flat {
  padding: 1.5rem 0rem;

}
}


a.btn-flat {
  overflow: hidden;

  padding: 1.5rem 0rem;

  color: #fff;
  border-radius: 0;
  background: #000;

}



.btn-real-dent {
  /*周りの凹み*/
  display: inline-block;
  position: relative;
  text-decoration: none;
  color: rgba(229 13 243 / 52%);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  text-align: center;
  background: #f7f7f7;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.08);
}
.btn-real-dent i {
  /*ボタン自体*/
  position: absolute;
  content: '';
  width: 40px;
  height: 40px;
  line-height: 40px;
  left: 6px;
  top: 4px;
  border-radius: 50%;
  font-size: 20px;
  background-image: linear-gradient(#e8e8e8 0%, #d6d6d6 100%);
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.66);
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #b5b5b5;
}
  
.btn-real-dent .fa:active {
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  border-bottom: solid 2px #d8d8d8;
}





.btn-flat {
margin-top:-2px;
}

.slide-content-text {

}

.slide-content {

width:100%;




}

.movie-slide-title {
	text-align:center;
font-size: 14px!important;
	margin-bottom:10px;
}

.movie-slide-title-front {
	text-align:center;
font-size: 14px!important;
	margin-bottom:-30px;
}

.movie-slide-name {
	text-align:center;
	margin-top:5px!important;
}




/*スマホ 動画カテゴリーメニュー*/
.swiper-container {
margin-bottom:25px;
}


/固定ページ/
.btn btn-flat a {
	color: #fff!important;
}

.content .afTagBox {
    border: 0px;
}

/*動画サイズ調整（movie wrap）
---------------------------------------------------------------------*/

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
			   text-align: center;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.movie-wrap embed {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.movie-wrap object {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}



.yarpp-thumbnails-horizontal {
    text-align: center;
}






<!--  stripchat 下部固定バナー -->

.stripchat-live-pc {
    position: fixed;      /* 画面に固定（スクロールしても動かない） */
    bottom: 0px;            /* 画面の下端にぴったりくっつける（必要に応じて bottom: 20px; などで余白を調整） */
    left: 0;              /* 左端を基準に */
    right: 0;             /* 右端を基準に（幅を画面全体に広げる） */
    width: 1060px;        /* iframeの幅に合わせる（必要に応じて調整） */
    height: 120px;        /* iframeの高さに合わせる */
    margin: 0 auto;       /* 左右マージンをautoにすることで水平中央寄せ */
    z-index: 9999;        /* 他の要素の上に表示させる（必要に応じて） */
}
.stripchat-live-pc iframe {
    pointer-events: auto; /* iframe自体は操作可能にする場合 */
    width: 100%;
    height: 100%;
}

        body {
            padding-bottom: 160px;
            margin: 0;
        }	

	
.stripchat-live-sp {
position: fixed;
    bottom: 0px;
    left: 50%;                  /* 左端を画面中央に置く */
    transform: translateX(-50%); /* 自分の幅の半分だけ左にずらす */
    width: 100%;                 /* 好きな横幅を指定（例: 80%） */
    max-width: 100%;           /* 必要に応じて最大幅制限 */
    height: 100px;
    z-index: 9999;
    border: none;
    background: #000;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.5);
    overflow: hidden;
        }

        body {
            padding-bottom: 160px;
            margin: 0;
        }	


