@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&family=Rufina:wght@400;700&display=swap');

html{
	overflow-x:hidden;
}
@media screen and (max-width:833px){
	body{
		overflow-x:hidden;
	}
}

body .container{
	font-family: 'Noto Serif JP', serif;
	background:#F5F5F5;
	color:#5E5E5E;
}

.home .article h1,.page .date-tags,.author-info,.home .entry-title{
	display:none;
}


/* 【初期】 */
.home .entry-content{
	margin-top:0;
}
.flexslider,
.metaslider .flexslider,
.home .content,
.home .entry-content,
.home .article,
.footer,
.copyright{
	padding:0!important;
	margin:0!important;
}
.footer-bottom,
.tagline,
.widget-content-bottom,
.content-bottom{
	margin:0!important;
}

.page .article h2,.page .article h3,.page .article h4{
	margin:0;
	padding:0;
	background:none;
	border:none;
}
.page .article p{
	margin:0;
	position:relative;
	z-index:0;
}

main.main{
	padding-top:0;
}

#content{
	margin-top:0;
	padding-top: 0;
}
@media screen and (min-width:1024px){
	#content{
		padding-top: 5rem;
	}
}


/* 【リンクタグ設定】 */
.entry-content a{
	display:block;
	text-decoration:none;
}
.breadcrumb a{
	display:inline-block;
}
.pager-post-navi a.prev-post,
.pager-post-navi a.next-post{
	display:flex;
}

a{
	outline:none;
}
/* ※↑firefoxリンククリックでボーダー削除 */


/* 【テーブルスタイル：初期】 */
.container table tr,
.container table tr:nth-of-type(2n+1),
.container table tr th,
.container table tr td{
/* 	background:none; */
/* 	border:none; */
}


/* 【ウジェット：コンテンツ下部】 */
.content-bottom-in{
	width:100%;
}


/* 【投稿ページ：アイキャッチ・P】 */
.eye-catch{
	margin: auto;
}
.eye-catch img{
	width:100%;
	max-width: 1000px;
}
.single p{
	margin-bottom:1em;
}


/* 【問い合わせ等送信ボタン】 */
.wpcf7-form p{
	margin-bottom:1em;
}
.wpcf7 .wpcf7-submit:disabled{
	background-color: #eee;
	color:#303030;
}

input[type="submit"]{
	background-color: #000;
	color:#fff;
}


/* 【mobileナビ】 */
.menu-drawer li a{
    margin: 20px 5px;
    display: block;
	border-bottom: 1px #000 dotted;
}
.Mobile-nav a{
	position:relative;
}
.Mobile-nav a::after{
	padding-left:.5rem;
	font-size:.85rem;
}
.Mobile-nav:nth-of-type(1) a::after{
	content:"⋯⋯ ホーム";
}
.Mobile-nav:nth-of-type(2) a::after{
	content:"⋯⋯ コンセプト";
}
.Mobile-nav:nth-of-type(3) a::after{
	content:"⋯⋯ 施設案内";
}
.Mobile-nav:nth-of-type(4) a::after{
	content:"⋯⋯ プログラム";
}
.Mobile-nav:nth-of-type(5) a::after{
	content:"⋯⋯ 指導者";
}
.Mobile-nav:nth-of-type(6) a::after{
	content:"⋯⋯ 料金";
}
.Mobile-nav:nth-of-type(7) a::after{
	content:"⋯⋯ お知らせ";
}
.Mobile-nav:nth-of-type(8) a::after{
	content:"⋯⋯ よくある質問";
}
.Mobile-nav:nth-of-type(9) a::after{
	content:"⋯⋯ お問い合わせ";
}
.Mobile-nav:nth-of-type(10) a::after{
	content:"⋯⋯ 利用規約";
}

/* - */
.mobile-footer-menu-buttons .navi-menu-button:nth-of-type(1){
	background:#000;
}
.mobile-footer-menu-buttons .navi-menu-button:nth-of-type(1) a{
	color:#fff;
}
.mobile-footer-menu-buttons .navi-menu-button:nth-of-type(2){
	background:#FFD600;
}
.mobile-footer-menu-buttons .navi-menu-button:nth-of-type(2) a{
/* 	color:#fff; */
}
.mobile-footer-menu-buttons.mobile-menu-buttons .menu-caption {
	font-size: 1rem;
	font-weight:bold;
}

.mobile-footer-menu-buttons .custom-menu-icon .fa-star{
	margin-bottom:0.3rem;
}
.mobile-footer-menu-buttons .custom-menu-icon .fa-star::before{
	content:"要予約制";
	font-weight:normal;
	font-size:.85rem;
	font-family: 'Noto Serif JP', serif;
	background: #fff;
	color: #5e5e5e;
	padding: 0.1rem 0.5rem;
	border-radius: 5px;
}


/* 【フッター】 */
#F-contact a,
#F-nav a{
	display:block;
	text-decoration:none;
}

/* -- */
#F-contact{
	padding:5rem 0 5rem;
	background:#fff;
}
#F-contact h2{
	text-align:center;
}
#F-contact .wrap-box{
	justify-content:space-around;
}
#F-contact .wrap-box .item{
	width:80%;
	border:solid 3px #5e5e5e;
	border-radius:80px 0 80px 0;
	padding:3.5rem 1.5rem;
	text-align: center;
	color: #5e5e5e;
	transition:.6s;
	margin:0 auto 1rem;
}
#F-contact .wrap-box .item .txt01 i{
	padding-right:0.5rem;
}
#F-contact .wrap-box .item .txt02{
	margin-top: 0.5rem;
  	font-size: 1.3rem;
  	font-weight: bold;
  	letter-spacing: 0.1rem;
}
#F-contact .wrap-box .item .main-but{
	margin-top:0.5rem!important;
}
#F-contact .wrap-box .item:hover{
	background:#eee;
}
#F-contact .wrap-box .item:hover .txt02{
/* 	color:#000; */
}

@media screen and (min-width:834px){
	#F-contact{
		padding:8rem 0 5rem;
	}
	#F-contact .wrap-box{
		margin-top:5rem;
	}
	#F-contact .wrap-box .item{
		width:40%;
		border-radius:100px 0 100px 0;
		margin:auto;
	}
	#F-contact .wrap-box .item .txt02{
		margin-top: 1.5rem;
		font-size: 1.8rem;
	}
	#F-contact .wrap-box .item .main-but{
		margin-top:1.5rem!important;
	}
}

/* -- */
#F-nav{
	background:#fff;
	padding:0 0 1.5rem;
}
#F-nav .wrap-width{
	width:100%;
	max-width:1550px;
	margin:auto;
	padding-left:1rem;
	padding-right:1rem;
}
#F-nav .f-logo{
	width:50%;
	max-width:300px;
	margin:auto;
	display:block;
}

#F-nav .sns-area{
	justify-content:center;
}
#F-nav .sns-area .sns-item{
	width: 30px;
  	margin: 0.5rem;
}
#F-nav .sns-area .sns-item img{
	vertical-align:top;
}

#F-nav .wrap-bottom .f-info{
	width: fit-content;
  	margin:1.5rem auto 3rem;
}
#F-nav .wrap-bottom .f-info p{
	margin-bottom:1rem;
}
#F-nav .wrap-bottom .f-link{
	border-top: solid 3px #5e5e5e;
	padding: 1.5rem;
}
#F-nav .wrap-bottom .f-link a{
	padding: 0.5rem;
	margin-bottom: 1rem;
  	color: #5e5e5e;
	border-bottom: solid 1px #5e5e5e;
	line-height: 1.2rem;
}

#F-nav .wrap-bottom .f-info .txt01 a{
	display:inline-block;
	margin-left: 0.3rem;
}

#F-nav .wrap-bottom .f-link a .mini{
	font-size:.8rem;
	padding-left:0.3rem;
}

@media screen and (min-width:834px){
	#F-nav{
		padding:3rem 0 1.5rem;
	}
	
	#F-nav .wrap-bottom{
		display: grid;
  		justify-content: space-between;
		margin-top: 3rem;
		grid-template-columns: 60% 40%;
	}
	#F-nav .wrap-bottom .f-info {
		margin: 0;
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: max-content max-content 1fr;
		grid-column-gap: 2rem;
	}
	#F-nav .wrap-bottom .f-info .txt01{
		grid-column: 1 / 3;
		grid-row: 1 / 2;
	}
	#F-nav .wrap-bottom .f-info .txt02{
		grid-column: 1 / 3;
		grid-row: 2 / 3;
	}
	#F-nav .wrap-bottom .f-info .txt03{
		grid-column: 1 / 3;
		grid-row: 3 / 4;
	}
	
	#F-nav .wrap-bottom .f-link{
		min-width: 300px;
/* 		width:35%; */
	}
}
@media screen and (min-width:1050px){
	#F-nav .wrap-bottom .f-link a{
		border:none;
		position:relative;
		padding-left:18px;
	}
	#F-nav .wrap-bottom .f-link a::before{
		content:"";
		width:10px;
		height:10px;
		position:absolute;
		top:50%;
		left:0;
		transform:translateY(-50%) rotate(45deg);
		background:#5e5e5e;
		transition:.6s;
	}
	#F-nav .wrap-bottom .f-link a:hover::before{
		transform:translateY(-50%) rotate(0deg);
		background:#000;
	}
	#F-nav .wrap-bottom{
		grid-template-columns: repeat(2,1fr);
	}
	#F-nav .wrap-bottom .f-link{
		width: auto;
		display:grid;
		grid-template-columns: repeat(3,1fr);
	}
}
@media screen and (min-width:1300px){
	#F-nav .wrap-bottom .f-info .txt02{
		grid-column: 1 / 2;
		grid-row: 2 / 3;
	}
	#F-nav .wrap-bottom .f-info .txt03{
		grid-column: 2 / 3;
		grid-row: 2 / 3;
	}
}



/* 【本文の幅調節：画面幅に合わせる】 */
/* TOP以外 */
#content-in{
/* 	width:100%;
	max-width:1000px;
	margin:auto; */
}

/* TOP */
/* .home  */
.page #content-in{
	width:100%;
	max-width:100%;
}
/* .home */
main{
	background:transparent!important;
}
.home .main{
	padding:0;
	border:none;
}


/* 【ボタン】 */
.main-but{
	display: flex !important;
	justify-content: center;
	align-items: center;
	width: fit-content;
	margin: 1.5rem auto 0;
	color:#5e5e5e;
	transition: color 0.4s;
}
.main-but.right{
	margin:1.5rem 0 0 auto;
}
.main-but .btn-loading {
	display: inline-flex;
	text-decoration: none;
	font-weight: 700;
	color: #5e5e5e;
	width: 40px;
	height: 40px;
	font-size: 14px;
	position: relative;
	opacity: 1 !important;
	transition: all 0.3s;
	background-color: #5e5e5e;
	border-radius: 100%;
	transition: color 0.4s;
	overflow: hidden;
	margin-left: 1rem;
}
.main-but .btn-loading:before,
.main-but .btn-loading:after {
	content: "";
	display: block;
	position: absolute;
	width: 50%;
	height: 0;
	background-color: #000;
	pointer-events: none;
}
.main-but .btn-loading:before {
	bottom: 0;
	left: 0;
}
.main-but .btn-loading:after {
	top: 0;
	right: 0;
}
#F-contact .wrap-box .item{
	transition: all 0.3s;
}
#F-contact .wrap-box .item:hover{
	color:#000;
}
.main-but:hover,
#F-contact .wrap-box .item:hover .main-but{
	color: #000;
}
.main-but:hover .btn-loading,
#F-contact .wrap-box .item:hover .btn-loading{
	color: #000;
}
.main-but:hover .btn-loading:before,
.main-but:hover .btn-loading:after,
#F-contact .wrap-box .item:hover .btn-loading:before,
#F-contact .wrap-box .item:hover .btn-loading:after{
	height: 100%;
}
.main-but:hover .btn-loading:before,
#F-contact .wrap-box .item:hover .btn-loading:before{
	transition: height 0.2s 0.2s linear;
}
.main-but:hover .btn-loading:after,
#F-contact .wrap-box .item:hover .btn-loading:after{
	transition: height 0.2s linear;
}
.main-but .btn-loading span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	background-color: #FFF;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}
@media screen and (min-width:834px){
	.main-but .btn-loading {
		width: 50px;
		height: 50px;
	}
}


/* 【共通css】 */
.width-1300{
	max-width:1300px;
	margin:auto;
	padding-left:1rem;
	padding-right:1rem;
}
.width-1200{
	max-width:1200px;
	margin:auto;
}
.width-1000{
	max-width:1000px;
	margin:auto;
}
.m-auto{
	margin:auto!important;
}
.width-800{
	max-width:800px;
	margin:auto;
}

.fl{
	display:flex;
	flex-wrap:wrap;
}
.fl-R{
	flex-direction:row-reverse;
}
.fl-margin{
	margin:0;
}
.fl-item{
	width:100%;
	margin:0 0 1rem;
}

.hissu{
	color:red;
	font-size:.8em;
}

.mini{
	font-size:.9rem;
}

@media screen and (min-width:834px){
	.fl-item{
		width:calc((100% / 2) - 1em);
		margin:0.5em;
	}
}

.main-h2{
	font-family: 'Rufina', serif;
	font-size: 2rem !important;
	letter-spacing: 0.2rem;
	font-weight:normal!important;
	margin-bottom: 1.5rem !important;
}
.top-sec01 .main-h2{
	font-size: 1.2rem !important;
  	line-height: 2rem;
}
.main-h2::first-letter,
.main-h2 .f-txt{
	font-size: 3.5rem !important;
	color: transparent;
	-webkit-text-stroke: 2px #5E5E5E;
/* 	text-stroke: 2px #5E5E5E; */
}
.top-sec01 .main-h2 .f-txt{
	-webkit-text-stroke: 2px #fff;
}
.top-sec01 .main-h2::first-letter{
	font-size: 2rem !important;
}

.sub-title{
	font-size: 1.3rem;
  	margin-bottom: 1.5rem!important;
  	line-height: 3rem;
	letter-spacing:0.1rem;
}
.empha{
/* 	background: #000; */
	background: linear-gradient(transparent 60%,#FFD600 60%,#FFD600 90%,transparent 90%);
	padding: 0.3rem 0.3rem;
/* 	margin: 0 0.3rem; */
	font-weight: bold;
	color: #000;
}
.empha.black{
/* 	background: #fff; */
	color: #fff;
	text-shadow: 2px 2px 3px #000;
}
.text{
	line-height: 2.2rem;
  	letter-spacing: 0.05rem;
}

.line-red {
  background: linear-gradient(transparent 70%,#A00000 70%,#A00000 100%,transparent 100%);
/*   font-weight: bold; */
}
@media screen and (min-width:834px){
	.main-h2{
		font-size: 2.5rem !important;
		line-height: normal;
	}
	.top-sec01 .main-h2{
		font-size: 2rem !important;
		line-height: 3rem;
	}
	.main-h2::first-letter,
	.main-h2 .f-txt{
		font-size: 4.5rem !important;
	}
	.top-sec01 .main-h2::first-letter{
		font-size: 3rem !important;
	}
	.sub-title{
		font-size: 1.6rem;
		line-height: 3.5rem;
	}
	
	.text{
		letter-spacing: 0.1rem;
	}
}


/* ===============================================
TOP
=============================================== */

.top-sec{
	position:relative;
	margin-bottom:0;
}



/* - */
.top-sec01{
	padding:5rem 0 1rem;
}
.top-sec01 .main-h2{
	margin-bottom: 0 !important;
/* 	width: 50%; */
/* 	background: #000 !important; */
	color: #fff;
	text-align: center;
	border-radius: 10px 10px 0 0;
	
}
.top-sec01 .main-h2::first-letter{
	-webkit-text-stroke: 2px #fff;
}
/* .top-sec01 .news-area{
	border: solid 2px #5E5E5E;
  	border-radius: 0 10px 10px 10px;
  	padding: 2rem 1rem;
	background:#fff;
} */
 .top-sec01 .news-area .widget-entry-cards .a-wrap {
	border-bottom: solid 1px #5e5e5e;
	padding: 1rem 0.5rem;
}
.top-sec01 .news-area .new-entry-card-content{
	display: flex;
	flex-wrap:wrap;
}
.top-sec01 .news-area .new-entry-card-date{
	display:block;
	width:100%;
	order: 1;
}
.top-sec01 .news-area .new-entry-card-update-date{
	display:none;
}
.top-sec01 .news-area .new-entry-card-title{
	width:100%;
	order: 2;
}
.top-sec01 .news-area .widget-entry-card-content {
	margin-left: 0;
}
.top-sec01 .news-area .widget-entry-cards figure {
	display: none;
}

/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 50px;
  margin: 0 auto;
}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/2);
  text-align: center;
  float: left;
  transition: all 0.2s ease;
	background-color: #5E5E5E;
	border-radius: 10px 10px 0 0;
}
input[name="tab_item"] {
  display: none;
}

.tab_content {
  display: none;
  padding: 40px 40px 0;
  clear: both;
  overflow: hidden;
	
	border: solid 2px #5E5E5E;
  	border-radius: 0 0 10px 10px;
  	padding: 2rem 1rem;
	background:#fff;
}

#all:checked ~ #all_content,
#programming:checked ~ #programming_content,
#design:checked ~ #design_content {
  display: block;
}

.tabs input:checked + .tab_item .main-h2{
  background-color: #000;
  color: #fff;
}
@media screen and (min-width:834px){
	.top-sec01{
		padding:8rem 0 5rem;
	}
	.top-sec01 .news-area .new-entry-card-date{
		display:block;
		width:20%;
	}
	.top-sec01 .news-area .new-entry-card-title{
		width:80%;
	}
	.top-sec01 .news-area .new-entry-card-date .post-date{
		font-size: 1rem !important;
	}
}



/* - */
.top-sec02{
	padding:3rem 0 6rem;
}
.top-sec02 .wrap-box{
	justify-content:space-between;
}
.top-sec02 .image-area{
	width:100%;
	position:relative;
}
.top-sec02 .text-area{
	width:100%;
	margin:auto 0;
	position:relative;
}

.top-sec02 .image-area .hoshi-img01{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/hoshi-img04.png) center no-repeat;
	background-size:contain;
	width: 30%;
  height: 0;
  padding-top: 45.29032%;
	position: absolute !important;
	top: 60%;
	left: 11%;
	z-index:-1;
}

.top-sec02 .text-area .hoshi-img03{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/hoshi-img03.png) center no-repeat;
	background-size:contain;
	width: 30%;
	height: 0;
	padding-top: 30%;
	position: absolute !important;
	bottom: -15%;
  	left: 25%;
	z-index:-1;
	max-width: 130px;
}

@media screen and (min-width:480px){
	.top-sec02 .text-area .hoshi-img02{
/* 		top: -46%; */
	}
}
@media screen and (min-width:650px){
	.top-sec02 .text-area .hoshi-img02{
/* 		left: 13%; */
	}
	.top-sec02 .text-area .hoshi-img03{
		bottom: -22%;
  		left: 36%;
	}
}

@media screen and (min-width:834px){
	.top-sec02{
		padding:3rem 0 8rem;
	}
	.top-sec02 .image-area{
		width:55%;
	}
	.top-sec02 .text-area{
		width:40%;
		margin:auto 0;
	}
	
	.top-sec02 .hoshi-img01{
		width:6%;
		padding-top:7.16949%;
		bottom: 23rem;
		left: 25rem;
	}
	
	.top-sec02 .image-area .hoshi-img01{
		background:url(https://hero-pilates.com/wp-content/uploads/2024/01/hoshi-img01.png) center no-repeat;
		background-size:contain;
		width: 15%;
		height: 0;
		padding-top: 17.92372%;
	}
	.top-sec02 .text-area .hoshi-img02{
		background:url(https://hero-pilates.com/wp-content/uploads/2024/01/hoshi-img02.png) center no-repeat;
		background-size:contain;
		width: 35%;
		height: 0;
		padding-top: 32.02830%;
		position: absolute !important;
		top: -22%;
    	right: 8%;
		z-index:-1;
/* 		max-width: 150px; */
	}
	.top-sec02 .text-area .hoshi-img03 {
		bottom: -12%;
    	left: 17%;
		max-width:none;
	}
}
@media screen and (min-width:1023px){
	.top-sec02 .image-area .hoshi-img01{
		width: 18%;
    	height: 0;
    	padding-top: 21.50847%;
	}
	.top-sec02 .text-area .hoshi-img02{
		width: 45%;
    	height: 0;
    	padding-top: 41.17924%;
		top: -45%;
    	right: 18%;
	}
	.top-sec02 .text-area .hoshi-img03 {
		width: 35%;
    	height: 0;
    	padding-top: 35%;
		bottom: -35%;
		left: 25%;
	}
}


/* - */
.top-sec03{
	border-top: solid 10px #000;
	border-bottom: solid 10px #000;
}
.top-sec03::before{
	content:"";
/* 	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/277.jpg) center no-repeat;
	background-size:cover; */
/* 	background-image: linear-gradient(0deg, rgba(0,0,0,0.5), rgba(0,0,0,0.5)),url(https://hero-pilates.com/wp-content/uploads/2024/01/sec03_bg.png),linear-gradient(0deg, rgb(255, 255, 255), rgb(255, 255, 255)); */
	background-image: linear-gradient(0deg, rgba(245, 245, 245,0.6), rgba(245, 245, 245,0.6)),url(https://hero-pilates.com/wp-content/uploads/2024/01/sec03_bg.png),linear-gradient(0deg, rgb(245, 245, 245), rgb(245, 245, 245));
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat,repeat-x,no-repeat;
	
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}
.top-sec03 .width-1000{
	position:relative; 
}
.top-sec03 .wrap-box{
/* 	padding:6rem 0 5rem; */
	padding: 4rem 0 3rem;
/*   background: rgba(255,255,255,0.8); */
/* 	background:rgba(0,0,0,0.7); */
	background:rgba(0,0,0,0.3);
	position:relative;
	margin: auto 2rem;
}
.top-sec03 .width-1000::before,
.top-sec03 .width-1000::after{
	content:"";
	width:20px;
	height:100%;
	background:rgba(0,0,0,0.3);
/* 	background: #F5F5F5; */
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}
.top-sec03 .width-1000::after{
	top:0;
	left:auto;
	right:0;
}

.top-sec03 .text-area{
	max-width:500px;
	margin:auto;
	text-align: center;
	
	color:#fff;
}
.top-sec03 .text-area .text{
	text-align:left;
	padding:0 1rem;
}
.top-sec03 .text-area .text-01{
	text-align:center;
	font-size:1.1rem;
	margin:0 auto 0.5rem;
	width: fit-content;
	background: #5e5e5e;
	color: #fff;
	border-radius: 25px 0;
	padding: 0.5rem;
	
/* 	background: #f5f5f5;
  	color: #5e5e5e; */
}

.top-sec03 .text-area .text span{
/* 	font-size:1.1rem; */
	font-weight:bold;
/* 	color:#3F3F3F; */
}
.top-sec03 .text-area .sub-title img{
	width:70%;
	max-width:300px;
	display:block;
	margin:0.5rem auto 0;
}

.top-sec03 .text-area .sub-title .hero{
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.2rem;
}
.top-sec03 .text-area h2,
.top-sec03 .text-area p{
	color:#fff;
}
.top-sec03 .main-h2::first-letter,
.top-sec03 .main-h2 .f-txt{
  -webkit-text-stroke: 2px #fff;
}
@media screen and (min-width:834px){
	.top-sec03{
		border-top: solid 20px #000;
		border-bottom: solid 20px #000;
	}
	.top-sec03 .wrap-box{
		padding:8rem 0;
/* 		background: #F5F5F5; */
/* 		background:rgba(0,0,0,0.9); */
	}
	.top-sec03 .width-1000::before,
	.top-sec03 .width-1000::after{
/* 		background:rgba(0,0,0,0.9); */
	}
	.top-sec03 .text-area .text-01{
		font-size:1.3rem;
		padding: 0.5rem 1rem;
/* 		background: #5e5e5e; */
/* 		color: #fff; */
	}
	
	.top-sec03 .text-area .sub-title .hero{
		font-size: 2.2rem;
	}
}


/* - */
.top-sec04{
	padding: 5rem 0 3rem;
}
.top-sec05{
	padding:0 0 3rem;
}
.top-sec04 .wrap-box,
.top-sec05 .wrap-box{
	max-width: 1600px;
  	margin: 0 0 0 auto;
	justify-content:space-between;
}
.top-sec05 .wrap-box{
	margin: 0 auto 0 0;
}
.top-sec04 .image-area{
	width:95%;
	margin:0 0 0 auto;
}
.top-sec04 .image-area .image,
.top-sec05 .image-area{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/125.jpg) no-repeat;
	background-size:cover;
	background-position: 30% bottom;
/*   	width: 95%; */
	width:100%;
  	height: auto;
  	min-height: 300px;
	border-radius: 20px 0 0 150px;
	height:350px;
}
/* .top-sec05 .image-area{
	background:url(https://hero-pilates.com/wp-content/uploads/2023/12/hero_05.jpg) center no-repeat;
	background-size:cover;
	border-radius:0 120px 20px 0;
} */
.top-sec04 .text-area,
.top-sec05 .text-area{
	width: 100%;
  	padding: 2rem 1rem;
}

.top-sec04 .text-area .text-item:first-child{
	margin-bottom:2rem;
}
@media screen and (min-width:834px){
	.top-sec04{
		padding: 8rem 0 8rem;
	}
/* 	.top-sec05{
		padding:3rem 0 8rem;
	} */
	.top-sec04 .image-area{
		width: 50%;
/* 		border-radius: 50px 0 0 300px; */
	}
	.top-sec04 .image-area .image{
/* 		border-radius: 60px 0 0 250px; */
/* 		height:60vh; */
	}
/* 	.top-sec05 .image-area{
		width: 60%;
		border-radius:0 300px 50px 0;
	} */
	.top-sec04 .text-area{
		width: 45%;
		padding: 8rem 0 8rem 1rem;
	}
/* 	.top-sec05 .text-area{
		width: 35%;
		padding: 8rem 1rem 8rem 0;
	} */
	.top-sec04 .image-area .fixed{
		position: sticky !important;
  		top: 150px;
	}
	.top-sec04 .text-area .text-item:first-child{
		margin-bottom:5rem;
	}
}
@media screen and (min-width:1023px){
	.top-sec04 .image-area{
		width: 60%;
	}
	.top-sec04 .image-area .image{
		border-radius: 60px 0 0 250px;
		height:60vh;
		background-position: center;
	}
	.top-sec04 .text-area{
		width: 35%;
	}
}

/* - */
.top-sec06{
	padding:6rem 0 5rem;
	background:#000;
	z-index:0;
}
.top-sec06::before{
	content:"";
/* 	background: linear-gradient(90deg,rgba(0, 0, 0, 0.5) 0%,rgba(0, 0, 0, 0.7) 60%, rgb(0, 0, 0)),url(https://hero-pilates.com/wp-content/uploads/2024/01/074.jpg); */
	background:linear-gradient(90deg,rgba(0, 0, 0, 0.3) 60%,rgba(0, 0, 0, 0.7) 90%, rgba(0, 0, 0, 0.6)),url(https://hero-pilates.com/wp-content/uploads/2024/01/074.jpg);
	background-repeat:no-repeat;
/* 	background-position:center; */
	background-position: center,60%;
	background-size:cover;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}
.top-sec06 .wrap-box{
	color: #fff;
  	max-width: 650px;
  	margin: 0 0 0 auto;
}
.top-sec06 .main-h2{
	color:#fff;
}
.top-sec06 .main-h2::first-letter,
.top-sec06 .main-h2 .f-txt{
	-webkit-text-stroke: 2px #fff;
}

.top-sec06 h2 .sub{
	background: #FFD600;
	color: #000;
	padding: 0.3rem 0.5rem;
	border-radius: 5px;
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: 0rem;
	margin-left: 1rem;
}

.top-sec06 .trial-but{
	background: #5E5E5E;
	border: solid 5px #fff;
	padding: 0.8rem 2.5rem;
	border-radius: 50px;
	margin-top: 1.5rem;
	color: #fff;
	position:relative;
	letter-spacing: 0.1rem;
	max-width: 550px;
}
.top-sec06 .trial-but::before{
	content: "▶";
	font-size: 1.3rem;
	color: #fff;
	position: absolute;
	top: 50%;
	right: 3rem;
	transform: translateY(-50%);
}

@media screen and (min-width:834px){
	.top-sec06{
		padding:8rem 0;
	}
	.top-sec06::before{
		background:linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5) 70%, rgba(0, 0, 0, 1)),url(https://hero-pilates.com/wp-content/uploads/2024/01/074.jpg);
		background-size: cover;
		background-position:center;
		width:60%;
	}
}


/* - */
.top-sec07{
	padding:6rem 0 8rem;
}
.top-sec07 .wrap-box{
	justify-content:space-between;
}
.top-sec07 h2{
	width:100%;
}
.top-sec07 .faq-area{
	width:100%;
}

@media screen and (min-width:834px){
	.top-sec07{
		padding:12rem 0;
	}
	.top-sec07 h2{
		width:15%;
	}
	.top-sec07 .faq-area{
		width:80%;
	}
}


.faq-area .accordion_one {
/* 	max-width: 1024px;*/
	margin: 0 auto 1rem;
}
.faq-area .accordion_one .accordion_header {
	padding: 0.5rem 2rem 0.5rem 2.2rem;
	position: relative;
	z-index: +1;
	cursor: pointer;
	transition-duration: 0.2s;
   border-bottom:solid 2px #5e5e5e;
}
.faq-area .accordion_one .accordion_header::before{
	content:"Q";
	font-size: 1.8rem;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	color:#FFD600;
}
.faq-area .accordion_one .accordion_header:hover {
	opacity: .8;
}
.faq-area .accordion_one .accordion_header .i_box {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 50%;
	right: 5%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	box-sizing: border-box;
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
}
.faq-area .accordion_one .accordion_header.stay .i_box {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.faq-area .accordion_one .accordion_header .i_box .one_i {
	display: block;
	width: 18px;
	height: 18px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transform-origin: center center;
	transition-duration: 0.2s;
	position: relative;
}
.faq-area .accordion_one .accordion_header.stay .i_box .one_i {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.faq-area .accordion_one .accordion_header.stay.open .i_box .one_i {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.faq-area .accordion_one .accordion_header.open .i_box {
	-webkit-transform: rotate(-360deg);
	transform: rotate(-360deg);
}
.faq-area .accordion_one .accordion_header.stay.open .i_box {
	-webkit-transform: rotate(315eg);
	transform: rotate(315deg);
}
.faq-area .accordion_one .accordion_header .i_box .one_i:before,
.faq-area .accordion_one .accordion_header .i_box .one_i:after {
	display: flex;
	content: '';
	background-color: #5e5e5e;
	border-radius: 10px;
	width: 18px;
	height: 4px;
	position: absolute;
	top: 7px;
	left: 0;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	transform-origin: center center;
}
.faq-area .accordion_one .accordion_header .i_box .one_i:before {
	width: 4px;
	height: 18px;
	top: 0;
	left: 7px;
}
.faq-area .accordion_one .accordion_header.stay .i_box .one_i:before {
	content: none;
}
.faq-area .accordion_one .accordion_header.open .i_box .one_i:before {
	content: none;
}
.faq-area .accordion_one .accordion_header.stay.open .i_box .one_i:before {
	content: "";
}
.faq-area .accordion_one .accordion_header.open .i_box .one_i:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.faq-area .accordion_one .accordion_header.stay.open .i_box .one_i:after {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}
.faq-area .accordion_one .accordion_inner {
	display: none;
	padding: 0.5rem 0.5rem 1rem 2.2rem;
	box-sizing: border-box;
	position:relative;
}
.faq-area .accordion_one .accordion_inner::before{
	content:"A";
	font-size: 1.8rem;
	position: absolute;
	top: calc(50% - 0.3rem);
	left: 0;
	transform: translateY(-50%);
	color:#000;
}
.faq-area .accordion_one .accordion_inner.stay {
	display: block;
}

.faq-area .accordion_one .accordion_inner p.txt_a_ac {
	margin: 0;
}
@media screen and (max-width: 1024px) {
	.faq-area .accordion_one .accordion_header {
		font-size: 18px;
	}
	.faq-area .accordion_one .accordion_header .i_box {
		width: 30px;
		height: 30px;
		margin-top: -15px;
	}
}
@media screen and (max-width: 767px) {
	.faq-area .accordion_one .accordion_header {
		font-size: 16px;
		text-align: left;
		padding: 15px 60px 15px 35px;
	}
}




/* ===============================================
固定ページ
=============================================== */
.main{
	padding-top:0;
}

.page-txt{
	line-break: strict;
	letter-spacing: 0.05rem;
}

.page-id-102 #content-in .entry-content{
	width:100%;
	max-width:1000px;
	margin:auto;
}


.entry-title,
.archive-title{
	position:relative;
	color:#fff;
	padding: 3rem 0;
  	text-align: center;
	margin-top:0;
	margin-bottom: 5rem;
}
.entry-title::after,
.archive-title::after{
	content:"";
	background:#5E5E5E;
	width:100vw;
	height:100%;
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
	z-index:-1;
}
.archive-title .fa{
	display:none;
}
.page .entry-title,
.archive-title{
	font-family: 'Rufina', serif;
	font-size:2rem;
	letter-spacing: 0.2rem;
}
.page .entry-title::first-letter,
.archive-title::first-letter{
	font-size: 3.5rem;
/* 	color: transparent;
	-webkit-text-stroke: 2px #fff; */
}
@media screen and (min-width:834px){
	.page .entry-title,
	.archive-title{
		font-size: 2.5rem;
	}
	.page .entry-title::first-letter,
	.archive-title::first-letter{
		font-size: 4.5rem;
	}
}

.page-top-text{
	text-align:center;
	margin-bottom: 5rem;
}


.page-text-area{
/* 	display: flex; */
/* 	flex-direction: column; */
/*   	justify-content: center; */
	z-index: 0;
/* 	position: relative; */
/* 	width: 100%; */
}
.page-text-area .page-h2{
	width: 100%;
	font-weight: 500!important;
	font-size: 1.3rem!important;
	letter-spacing: 0.1rem;
}
.page-text-area .page-h3{
	font-weight: 500!important;
	letter-spacing: 0.1rem;
	font-size: 1.3rem!important;
}
.page-text-area h2{
	margin:auto 0;
}
.page-text-area .c-text{
	color:#c0c0c0;
	position:relative;
	width: fit-content;
}
.page-text-area .c-text::before{
	content: "";
	width: 100px;
	height: 1px;
	background: #c0c0c0;
	position: absolute;
	right: -110px;
	top: 50%;
}


@media screen and (min-width:834px){
	.page-text-area .page-h2{
		letter-spacing: 0.2rem;
		font-size: 1.8rem!important;
	}
	.page-text-area .page-h3{
		letter-spacing: 0.2rem;
		font-size: 1.5rem!important;
	}
}


.txt-center{
	width:100%;
	max-width:800px;
	margin:auto!important;
}

.border-left{
	border-left: solid 5px #5e5e5e;
  	padding-left: 10px;
}


/* -HEROpilates- */
.about-sec01 .wrap-box{
	max-width: 1600px;
	justify-content:space-between;
	margin-bottom:2rem;
}
.about-sec01 .img-area{
	width:100%;
	margin-bottom: 2rem;
}
.about-sec01 .img-area .image{
	position:relative;
	height:350px;
	width:100vw;
}
.about-sec01 .img-area .image::before{
	content:"";
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/168.jpg) center no-repeat;
	background-size:cover;
	background-position: 30% bottom;
	width:95%;
  	height: auto;
  	min-height: 300px;
	border-radius:0 20px 120px 0;
	height:350px;
	margin-left: -17px;
	
	position:absolute;
	top:0;
	left:0;
}



.about-sec01 .text-box .sub-title{
	text-align: center;
	margin: 2rem 0;
}
.about-sec01 .text-box .txt01{
	text-align:center;
	position:relative;
	padding-bottom:80px;
}
.about-sec01 .text-box .txt01::before{
	content: "";
	position: absolute;
	right: 0;
	bottom: 25px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #000 transparent transparent transparent;
	border-width: 30px 80px 0 80px;
}

.about-sec01 .text-box .effect-box{
	margin-bottom:2rem;
}
.about-sec01 .text-box .effect-box .item{
	width:calc((100% / 2) - 1rem);
	margin:0.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background:#5e5e5e;
	color:#fff;
	padding:1.3rem 0;
	border-radius:30px 0px 30px 0;
	line-height: 1.5rem;
}


@media screen and (min-width:834px){	
	.about-sec01 .wrap-box{
		margin-bottom:5rem;
	}
	.about-sec01 .wrap-box .title-area{
		width:35%;
		justify-content: center;
    	display: flex;
    	flex-direction: column;
	}
	
	.about-sec01 .wrap-box .img-area{		
		width: 60%;
		margin-bottom: 0;
	}
	.about-sec01 .img-area .image{
		background:url(https://hero-pilates.com/wp-content/uploads/2024/01/168.jpg) center no-repeat;
		background-size:cover;
		background-position: 30% bottom;
		width:100%;
		height: auto;
		min-height: 300px;
		border-radius:0 20px 120px 0;
		height:350px;
/* 		margin-left: -17px; */
		
		margin-left: -30px;
	}
	.about-sec01 .img-area .image::before{
		content:none;
	}
	.about-sec01 .text-area{
		width: 35%;
		padding: 8rem 1rem 8rem 0;
	}
	
	.about-sec01 .text-box .sub-title{
  		margin: 3rem 0;
	}
	
	.about-sec01 .text-box .effect-box .item{
		width:calc((100% / 4) - 1rem);
		padding:2rem 0;
		border-radius:45px 0px 45px 0;
	}
}
@media screen and (min-width:1023px){
	.about-sec01 .image-area{
		width: 60%;
	}
	.about-sec01 .img-area .image{
		border-radius: 0 60px 250px 0;
		height:60vh;
		background-position: center;
	}
	.about-sec01 .text-area{
		width: 35%;
	}
}


/* -STUDIO- */
.page-top-text.studio .sub-title img{
	width: 70%;
	max-width: 300px;
	display: block;
	margin: 0.5rem auto 0;
}

.studio-sec01 .item{
	justify-content: space-between;
	margin-bottom:3.5rem;
}
.studio-sec01 .item .image-area{
	width:90%;
	margin-bottom:2rem;
	position:relative;
}
.studio-sec01 .item .image-area::after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	bottom:-1rem;
	left:-1rem;
	z-index:-1;
	background:#5e5e5e;
	border-radius:0 120px 20px 0;
}
.studio-sec01 .item .image-area.image-left::after{
	border-radius:120px 0 0 20px;
	left:auto;
	right:-1rem;
}

.studio-sec01 .item .text-area{
	width:100%;
}

.studio-sec01 .item .image-area .image{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/240.jpg) center no-repeat;
	background-size:cover;
	background-position:center;
	width:100%;
	height: auto;
	min-height: 300px;
	border-radius:0 120px 20px 0;
	height:300px;
	position:relative;
	z-index:0;
}
.studio-sec01 .item:nth-of-type(2) .image-area .image{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/263.jpg) center no-repeat;
	background-size:cover;
}
.studio-sec01 .item:nth-of-type(3) .image-area .image{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/243.jpg) center no-repeat;
	background-size:cover;
}
.studio-sec01 .item:nth-of-type(4) .image-area .image{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/211.jpg) center no-repeat;
	background-size:cover;
}
.studio-sec01 .item .image-area.image-left .image{
	border-radius:120px 0 0 20px;
}

.studio-sec01 .page-text-area{
	width:100%;
	margin-bottom:1.5rem;
}

.studio-sec02 .page-text-area{
	margin-bottom:1.5rem;
}
.check-img{
	list-style:none;
	padding-left:0!important;
}
.check-img li{
  padding-left: 35px;
  line-height: 2.2em;
  background: url(https://hero-pilates.com/wp-content/uploads/2024/01/check_01.png) left 0px top 8px no-repeat;
  background-size: 25px auto;
}

@media screen and (min-width:834px){
	.studio-sec01 .item{
		margin-bottom:7rem;
	}
	
	.studio-sec01 .item .image-area{
		width:50%;
		margin-bottom:0;
	}
	.studio-sec01 .item .text-area{
		width:45%;
		margin:auto 0;
	}
	
	.studio-sec01 .page-text-area,
	.studio-sec02 .page-text-area{
		margin-bottom:2rem;
	}
}
@media screen and (min-width:1023px){
	.studio-sec01 .item .image-area .image{
		border-radius: 0 160px 60px 0;
		height:400px;
		background-position: center;
	}
	.studio-sec01 .item .image-area.image-left .image{
		border-radius:160px 0 0 60px;
	}
	
	.studio-sec01 .item .image-area::after{
		border-radius: 0 160px 60px 0;
	}
	.studio-sec01 .item .image-area.image-left::after{
		border-radius:160px 0 0 60px;
	}
}


/* -PROGRAM- */
.program{
	margin-bottom:3.5rem;
}
.program .page-taxt-wrap .page-text-area{
	background:#D9D9D9!important;
	margin-bottom:0.5rem;
	
	padding: 1rem 0.5rem;
  border-radius: 30px 0;
}
.program .page-taxt-wrap .time{
	background: #5e5e5e;
	color: #fff;
	padding: 0.2rem 0.8rem;
	font-size: .9rem;
	border-radius: 20px 0;
	width: fit-content;
	margin: 0 0 0.5rem auto!important;
}
.program .p-about{
	max-width:1000px;
	margin:0 auto 0.5rem!important;
}

.program .item{
	width:100%;
	max-width:1000px;
	margin:0 auto 1.5rem;
}
.program .item h3{
	background: #5e5e5e;
  	padding: 0.5rem 1rem;
  	color: #fff;
  	border-radius: 5px 5px 0 0;
}
.program .item .txt{
	border: solid 2px #5e5e5e;
  	padding: 1rem;
  	border-radius: 0 0 5px 5px;
}
.program-03 .image-box{
	width:100%;
	max-width:600px;
	margin:auto;
}
.program-03 .image-box .image{
	background:url(https://hero-pilates.com/wp-content/uploads/2024/01/208.jpg) center no-repeat;
	background-size:cover;
	background-position:center;
	width:100%;
	height: auto;
	min-height: 300px;
	border-radius:120px 0;
	height:300px;
	position:relative;
	z-index:0;
	margin:auto;
}

@media screen and (min-width:834px){
	.program{
		margin-bottom:6rem;
	}
	.program .page-taxt-wrap{
		display: flex;
  		background: #D9D9D9;
		margin-bottom: 1rem;
		
    	border-radius: 35px 0;
    	padding: 1rem 1rem 1rem 1.5rem;
	}
	.program .page-taxt-wrap .page-text-area{
		padding:0;
	}
	.program .page-taxt-wrap .page-h2{
		margin-bottom:0;
	}
	.program .page-taxt-wrap .time{
		white-space: nowrap;
		height: fit-content;		
		margin: auto 1rem auto auto !important;
	}
	
	.program .p-about{
		margin:0 auto 1rem!important;
	}
	
	.program .item{
		display:flex;
		justify-content:space-between;
	}
	.program .item h3{
		width:35%;
		text-align:center;
		border-radius: 5px;
		position:relative;
		margin: auto 0;
		padding:1rem 0.5rem;
		font-size: 1.3rem;
	}
	.program .item h3::before{
		content: "";
		width: 0px;
		height: 0px;
		margin: auto;
		border-style: solid;
		position: absolute;
		top: 50%;
		right: -13px;
		transform: translateY(-50%);
		border-color: transparent transparent transparent #5e5e5e;
		border-width: 15px 0 15px 15px;
	}
	.program .item .txt{
		width:63%;
		border-radius:0;
	}
	.program-03 .image-box .image{
		border-radius:160px 0;
		height:380px;
	}
}


/* -PRICE- */
.price-title{
	margin-bottom:3rem;
}
.price-title .page-text-area{
	position:relative;
}
.price-title .page-text-area .t-text{
	position: absolute;
	top: -0.8rem;
	left: 50%;
	transform: translateX(-50%);
	z-index:1;
}
.price-title .page-text-area .page-h2{
	background:#D9D9D9;
	text-align:center;
	padding:1rem;
	position:relative;
}
.price-title .page-text-area .page-h2::before{
	content: "";
	background: #D9D9D9;
	width: 200px;
	height: 120%;
	position: absolute;
	top: -45%;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
	z-index: -1;
}

.price-plan{
	margin-bottom:3.5rem;
}
.price-plan .page-text-area{
	margin-bottom:1.5rem;
}

.p-plan-about{
	margin-bottom:1.5rem!important;
}
.p-plan-price{
	background:#fff;
	padding: 1rem;
	box-shadow:2px 2px 5px rgba(0,0,0,0.25);
	display:flex;
	justify-content:space-between;
	margin-bottom:1.5rem;
}
.p-plan-price .txt{
	width:fit-content;
	margin:auto 0!important;
	font-size:1.2rem;
	font-weight:bold;
	line-height: 1.5rem;
}
.p-plan-price .txt span{
	font-size:1rem;
	font-weight:normal;
}
.p-plan-price .txt02 span{
	padding-left: 0.1rem;
	font-size: .8rem;
}

.price-margin{
	margin-bottom:6rem;
}

@media screen and (min-width:834px){
	.price-title{
		margin-bottom:5rem;
	}
	.price-plan{
		margin-bottom:6rem;
	}
	.p-plan-price{
		padding: 1.5rem 2rem;
	}
	.p-plan-price .txt{
		font-size:1.5rem;
	}
	.price-margin{
		margin-bottom:10rem;
	}
}


/* -INSTRUCTOR- */


.instructor{
	position:relative;
}
.instructor .instructor-name{
	background: #fff;
	height: 180px;
	border-radius: 80px 0;
	display: flex;
	position:relative;
	max-width: 500px;
  	margin: 0 auto 1.5rem;
}
.instructor .instructor-name .page-h2{
	font-family: 'Rufina', serif;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.5rem !important;
}
.instructor .instructor-name p{
	position: absolute;
	bottom: 0.5rem;
	left: 50%;
	transform: translateX(-50%);
	white-space: pre;
}

.instructor .image-area{
	margin-bottom:2rem;
}
.instructor .image-area .instructor-img{
	position:relative;
	padding: 0 1rem 1rem 0;
	max-width: 500px;
  	margin: auto;
}
.instructor .image-area .instructor-img::before{
	content:"";
	background:#5e5e5e;
	width:calc(100% - 1rem);
	height:calc(100% - 1rem);
	position:absolute;
	bottom:0;
	right:0;
	border-radius: 120px 0;
  	z-index: -1;
}
.instructor .image-area .instructor-img img{
	border-radius: 120px 0;
	display: block;
	border-radius: 120px 0;
}

.instructor .instructor-about .item{
	margin-bottom:2rem;
	position:relative;
	z-index:1;
}
.instructor .instructor-about .page-text-area{
	margin-bottom:1.5rem;
}

.instructor .instructor-about .item .text-area .txt:not(:last-child){
	margin-bottom:1rem;
}


@media screen and (min-width:834px){
	.instructor .instructor-name{
		width: 55%;
  		height: 250px;
  		border-radius: 120px 0;
		margin:0 0 3rem;
		max-width: none;
	}
	.instructor .image-area{
		width: 40%;
		position: absolute;
		top: 0;
		right: 0;
	}
	.instructor .instructor-about .item{
		margin-bottom:3rem;
	}
}
@media screen and (min-width:1023px){
	.instructor{
		padding-top:5rem;
		margin-bottom:6rem;
	}
	.instructor .instructor-name{
		width: 60%;
	}
	.instructor .image-area{
		width: 35%;
	}
	.instructor .instructor-name,
	.instructor .instructor-about .item{
		margin-bottom:5rem;
	}
	.instructor .image-area{
/* 		top: -5rem; */
	}
}









/* -利用規約- */
.tou-box{
	width:100%;
	max-width:1000px;
	margin:0 auto 3rem!important;
}
.tou-box h2{
	margin-bottom:1.5rem!important;
}
.tou-box ol li{
	margin-bottom:1rem;
}
@media screen and (min-width:834px){
	.tou-box{
		margin:0 auto 5rem!important;
	}
	.tou-box h2{
		margin-bottom:2rem!important;
	}
	.tou-box ol li{
		margin-bottom:1.5rem;
	}
}


/* -お問い合わせ- */
.page-id-100 .main p{
	margin-bottom:1.5rem;
}

/* -プライバシーポリシー- */
.page-id-102 .main p{
	margin-bottom:1.5rem;
}
.page-id-102 .main a{
	display:inline-block;
}


/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}


@media screen and (min-width: 834px){
	.br-834{
		display:none;
	}
}

.sp-main{
	display:none;
}
@media screen and (max-width: 600px){
	.pc-main{
		display:none;
	}
	.sp-main{
		display:block;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}





.f-editorial{
	position:relative;
}

.waves {
  position:relative;
  width: 100%;
  height:20vh;
  margin-bottom:-10px; /*Fix for safari gap*/
  min-height:100px;
  max-height:150px;
}

/* Animation */

.parallax > use {
  animation: move-forever 25s cubic-bezier(.55,.5,.45,.5)     infinite;
}
/* .parallax > use:nth-child(1) {
  animation-delay: -2s;
  animation-duration: 7s;
}
.parallax > use:nth-child(2) {
  animation-delay: -3s;
  animation-duration: 10s;
}
.parallax > use:nth-child(3) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(4) {
  animation-delay: -5s;
  animation-duration: 20s;
} */
.parallax > use:nth-child(1) {
  animation-delay: -4s;
  animation-duration: 13s;
}
.parallax > use:nth-child(2) {
  animation-delay: -5s;
  animation-duration: 16s;
}
.parallax > use:nth-child(3) {
  animation-delay: -6s;
  animation-duration: 20s;
}
.parallax > use:nth-child(4) {
  animation-delay: -7s;
  animation-duration: 26s;
}
@keyframes move-forever {
  0% {
   transform: translate3d(-90px,0,0);
  }
  100% { 
    transform: translate3d(85px,0,0);
  }
}
/*Shrinking for mobile*/
@media (max-width: 768px) {
  .waves {
    height:100px;
    min-height:40px;
  }
}







/* ============================================================== */
#head-nav{
	display:none;
}
@media screen and (min-width:1024px){
	.header-container{
		display:none;
	}

	#head-nav{
		font-family: 'Noto Serif JP', serif;
		position:fixed;
		z-index: 999;

		display: flex;
		width: 100%;
		max-width: 1600px;
		transform: translateX(-50%);
		left: 50%;
	}

	#head-nav .H-logo {
		width: 50%;
		align-content: center;
		display: flex;
	}
	#head-nav .H-logo img{
		display:block;
		width: 100%;
		max-width: 250px;
		margin: auto 0;
	}
	#head-nav .link-area{
		width: 50%;
		display: flex;
		justify-content:end;
		padding-right: 1rem;
	}

	#head-nav .H-link{
		width: fit-content;
		margin-right: 1rem;
		width: 230px;
		height: 80px;
		border-radius:0 0 10px 10px;
		
		text-decoration:none;
		
		display: flex;
    	justify-content: center;
    	align-items: center;
		flex-direction:column;
		position:relative;
		z-index: 9999;
	}
	#head-nav .H-link:nth-of-type(1){
		background: rgba(0,0,0,0.7);
		color:#fff;
	}
	#head-nav .H-link:nth-of-type(2){
		background:rgba(255,214,0,0.9);
		color:#5e5e5e;
	}
	#head-nav .H-link p{
		margin-bottom:0;
	}
	#head-nav .H-link .txt01{
		background: #fff;
		color: #5e5e5e;
		padding: 0.3rem 1rem;
		border-radius: 10px;
		font-size: 0.9rem;
		line-height: 1.3rem;
	}
	#head-nav .H-link .txt02{
		font-size: 1.6rem;
    	letter-spacing: 0.2rem;
    	font-weight: bold;
		line-height: 2rem;
	}

	#head-nav .openbtn{
		position:fixed;
		z-index: 9999;/*ボタンを最前面に*/
		cursor: pointer;
		/*     width: 50px;
		height:50px; */

		position: relative;
		top: 0;
		background: #c0c0c0;
		width: 100px;
		height: 80px;
		border-radius:0 0 10px 10px;
	}

	/*×に変化*/	
	.openbtn .m-border{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		/*     left: 14px; */
		height: 3px;
		border-radius: 2px;
		background-color: #5e5e5e;
		/*   	width: 45%; */

		left: 50%;
		width: 50%;
		transform: translateX(-50%);
	}
	.openbtn .m-title{
		bottom: 2px;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}

	.openbtn span:nth-of-type(1) {
		top:15px;	
	}

	.openbtn span:nth-of-type(2) {
		top:28px;
	}

	.openbtn span:nth-of-type(3) {
		top:43px;
	}

	.openbtn.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		left:50%;
		transform: translateY(6px) translateX(-50%) rotate(-45deg);
		width: 50%;
		background-color:#fff;
	}

	.openbtn.active span:nth-of-type(2) {
		opacity: 0;
	}

	.openbtn.active span:nth-of-type(3){
		top: 30px;
		left: 18px;
		left:50%;
		transform: translateY(-6px) translateX(-50%) rotate(45deg);
		width: 50%;
		background-color:#fff;
	}





	/* ハンバーガーメニュー */
	#g-nav.panelactive{
		position:fixed;
		z-index: 999;
		top: 0;
		width:100%;
		height: 100vh;

		left: 0;
/* 		overflow-y: scroll; */
	}

	/*丸の拡大*/
	.circle-bg{
		position: fixed;
		z-index:3;
		/*丸の形*/
		width: 100px;
		height: 100px;
		border-radius: 50%;
/* 		background:rgba(94,94,94,0.9); */
		background: rgba(245,245,245,0.95);
		
		/*丸のスタート位置と形状*/
		transform: scale(0);/*scaleをはじめは0に*/
		/* 	right:-50px; */
		top:-50px;
		transition: all .6s;/*0.6秒かけてアニメーション*/

		right: -20px;
	}

	.circle-bg.circleactive{
		transform: scale(50);/*クラスが付与されたらscaleを拡大*/
	}

	/*ナビゲーションの縦スクロール*/
	#g-nav-list{
/* 		display: none;

		position: fixed;
		z-index: 999; 
		width: 100%;
		height: 100vh;
		overflow: auto;
		-webkit-overflow-scrolling: touch; */
		
/* 		height: 550px; */
/* 		position: relative; */
/* 		margin: auto; */
/* 		top: 50%; */
/* 		transform: translateY(-50%); */
	}

	#g-nav.panelactive #g-nav-list{
		display: block; /*クラスが付与されたら出現*/
		height: 550px;
		position: relative;
	}

	/*ナビゲーション*/
/* 	#g-nav ul */
	#g-nav .g-nav-wrap{
		opacity: 0;/*はじめは透過0*/
		/*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
		position: absolute;
		z-index: 999;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
		
		min-width:90%;
	}

	/*背景が出現後にナビゲーションを表示*/
/* 	#g-nav.panelactive ul */
	#g-nav.panelactive .g-nav-wrap{
		opacity:1;
	}

	/* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
/* 	#g-nav.panelactive ul li */
	#g-nav.panelactive .g-nav-wrap .g-fl-box{
		animation-name:gnaviAnime;
		animation-duration:1s;
		animation-delay:.2s;/*0.2 秒遅らせて出現*/
		animation-fill-mode:forwards;
		opacity:0;
	}
	@keyframes gnaviAnime{
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
	}

	
	#g-nav .g-nav-wrap .g-nav-list-img {
/* 		width: 20%; */
	}
	#g-nav .g-nav-wrap .g-fl-box{
		width:calc((100% / 3) - 1rem);
		margin:0.5rem;
		
		display: flex;
    	flex-direction: column;
	}
	#g-nav .g-nav-wrap .g-fl-box.g-nav-list-img img{
		display:block;
		width:80%;
		margin:auto;
	}
	#g-nav .g-nav-wrap .g-fl-box.g-nav-list-img .sns-area{
		justify-content: center;
  		margin-top: 1rem;
	}
	#g-nav .g-nav-wrap .g-fl-box.g-nav-list-img .sns-area a{
		width:45px;
		margin: 0 .5rem;
	}
	#g-nav .g-nav-wrap ul{
/* 		width: 40%; */
		width: fit-content;
		margin: auto;
	}
	
	/*リストのレイアウト設定*/
	#g-nav li{
/* 		text-align: center;  */
		list-style: none;
		
		font-size: 1.3rem;
    	margin-bottom: 0.5rem;
	}

	#g-nav li a{
/* 		color: #fff; */
		color:#5e5e5e;
		text-decoration: none;
		padding:10px;
		display: block;
/* 		text-transform: uppercase; */
		letter-spacing: 0.1em;
		font-weight: bold;
		transition:.6s;
	}
	#g-nav li a .mini{
		font-size:.8rem;
		padding-left:0.3rem;
	}
	#g-nav li a:hover{
		color:#000;
	}
}

@media screen and (max-height:550px){
	#g-nav.panelactive{
		overflow-y:scroll;
	}
}
@media screen and (min-height:550px){
	#g-nav-list{
		top: 50%;
		transform: translateY(-50%);
	}

}



