@charset "utf-8";

@media screen and (max-width: 700px) {
    
html,body {
color: #000;
font-size: 14px;
line-height: 1.5em;
}
    
img{width: 100%;}

.inner,
.inner_nav{
    width: 94%;
    margin: 0 auto;
}

.sp_only {
	display: inherit;
}

    
.sp_none {
	display: none;
}

.forSP {
    display: block;
}
	
.index_price_txt {
	font-size: 0.8rem !important;
}

    
/* --------------

header 

-------------- */ 
    header {
	padding: 6px 0 8px;
    }

    header .h1{
        /*font-size: 2vw;
        margin-bottom: 5px;
        text-align: left;*/
		display: none;
    }

    .header_left{
			/*float:none;*/
	    width: 50%;
			display: inline-block;
	}

    .header_left img{
			width: 100%;
			padding-top: 10px;
			vertical-align: middle;
	}
    .header_linsta{float: none; display: none;}
    
    .header_logo{width: 100%;}
	
	
		.header_contact_btn{
			display: inline-block;
			width: 27%;
			margin-left: 4vw;
		}
	

    .mainimg{
        background:none;
        background-size: cover;
        height:auto;
    }
    
    .mainimg .inner{width:100%;}
    .mainimg h2{padding-top:0;}
    .mainimg .bnr_202106 {
				right: 2%;
				bottom: 0;
				top: -2%;
				width: 23vw;
		}
    nav,
    .is-fixed{display: none;}

    
    .sidebnr{
        position: fixed;
        top: auto;
        bottom:0 ;
        right:0;
        z-index: 999;
    }

    .sidebnr li{
        width: 50%;
        float: left;
        margin: 0 0 0 0;
    }
    
    .sidebnr li img{
        max-width: 300px;
    }
    
	/* spnavi */
	
	.navToggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right:3%;
    top: 1%;
    width: 42px;
    height: 54px;
    cursor: pointer;
    z-index: 3;
    background: #f297cf;
    text-align: center;
	}

	.navToggle span {
		display: block;
		position: absolute;    /* .navToggleに対して */
		width: 30px;
		border-bottom: solid 3px #eee;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
		left: 6px;
	}

	.navToggle span:nth-child(1) {
		top: 9px;
	}

	.navToggle span:nth-child(2) {
		top: 18px;
	}

	.navToggle span:nth-child(3) {
		top: 27px;
	}

	.navToggle span:nth-child(4) {
		border: none;
		color: #eee;
		font-size: 9px;
		font-weight: bold;
		top: 34px;
	}
	
	/* 最初のspanをマイナス45度に */
	.navToggle.active span:nth-child(1) {
		top: 18px;
		left: 6px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* 2番目と3番目のspanを45度に */
	.navToggle.active span:nth-child(2),
	.navToggle.active span:nth-child(3) {
		top: 18px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	
	.globalMenuSp {
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    background: #fff;
    color: #000;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
	}

	.globalMenuSp ul {
		background: #fff;
		margin: 0 auto;
		padding: 0;
		width: 100%;
		border-bottom: 1px dotted #666;
	}

	.globalMenuSp ul li {
		font-size: 3vw;
		list-style-type: none;
		padding: 0;
		width: 50%;
		border-right: 1px dotted #666;
		box-sizing: border-box;
	}
	.globalMenuSp ul li:first-child {
		width: 100%;
		border-right: none;
	}

	.globalMenuSp ul li:last-child {
		padding-bottom: 0;
        border-right: none;
	}

	.globalMenuSp ul li a {
		display: block;
		color: #000;
		padding: 1em 5px;
		text-decoration: none;
	}
	
	.globalMenuSp ul li:nth-child(2){border-top: 2px solid #c3e5e2;}
	.globalMenuSp ul li:nth-child(3){border-top: 2px solid #eac3df;}
    .globalMenuSp ul li:nth-child(4){border-top: 2px solid #aae2c8;}
	.globalMenuSp ul li:nth-child(5){border-top: 2px solid #aae2c8;}
	.globalMenuSp ul li:nth-child(6){border-top: 2px solid #f4cfb5;}
	.globalMenuSp ul li:nth-child(7){border-top: 2px solid #cfbced;}
	.globalMenuSp ul li:nth-child(8){border-top: 2px solid #eae6a4;}	
	.globalMenuSp ul li:nth-child(9){border-top: 2px solid #c3e5e2;}
	.globalMenuSp ul li:nth-child(10){border-top: 2px solid #eac3df;}
	.globalMenuSp ul li:nth-child(11){border-top: 2px solid #aae2c8;}
	.globalMenuSp ul li:nth-child(12){border-top: 2px solid #f4cfb5;}
    .globalMenuSp ul li:nth-child(13){border-top: 2px solid #c3e5e2;}
    .globalMenuSp ul li:nth-child(14){border-top: 2px solid #eac3df;}
	
	

	/* このクラスを、jQueryで付与・削除する */
	.globalMenuSp.active {
		transform: translateY(0%);
	}

    /* --------------

    index
    -------------- */

    div#index_contents{margin:20px 0 30px;}

    .index_ttl{
        text-align: center;
        margin-bottom: 30px;
        font-size: 3.5vw;
    }

    .index_ttl span{
        font-size: 8vw;
        font-weight: bold;
        line-height: 1.3em;
        display: block;
    }

    div.index_pd{padding: 30px 0;}

    .btnparts a{
        width: 85%;
        font-size: 4.5vw;
    }
	
	h3.subttl.pink::after{border-bottom: 4px solid #eac3df;}
	h3.subttl.blue::after{border-bottom: 4px solid #92d0ca;}
	h3.subttl.yellow::after{border-bottom: 4px solid #eae6a4;}


    /* メリット */
    ul.index_point{margin-bottom: 40px;}
    ul.index_point li{
        width: 98%;
        margin: 0 1% 20px;
    }

    ul.index_point li:nth-last-child(1),
    ul.index_point li:nth-last-child(2),
    ul.index_point li:nth-last-child(3),
    ul.index_point li:nth-last-child(4){width: 48%;}

    ul.index_point li h3{
        border-top: 3px solid #52acc1;
        border-left: none;
        padding: 10px 0 0 0;
        font-weight: bold;
        margin-bottom: 6px;
        font-size: 4vw;
        line-height: 1.5em;
        min-height: inherit;
    }
    
    ul.index_point li h3 span br {
	    display: none;
    }

    ul.index_point li h3 span{
        font-size: 3.5vw;
        margin-top: 10px;
			letter-spacing: -0.04em;
    }
    
    ul.index_point li p img{
    object-fit: cover;
    width: 100%;
    height:180px;
    }
    ul.index_point li:nth-last-child(1) p img,
    ul.index_point li:nth-last-child(2) p img,
    ul.index_point li:nth-last-child(3) p img,
    ul.index_point li:nth-last-child(4) p img{height:100px;}
	
		ul.index_point li h3 span a[href*="tel:"]{
		pointer-events: inherit;
		cursor: inherit;
		color: #e0426a;
		}

		/* メディア */
		div.index_media{
				background-color: #fff4f7;
				padding-bottom: 20px;
		}

		div.index_media h3{
			font-size: 4.5vw;
			margin-bottom: 40px;
			line-height: 1.8em;
			padding: 2rem;
		}

		div.index_media h3 span{
				font-size: 6vw;
		}

		div.index_media h3:after {
				content: "";
				position: absolute;
				display: block;
				bottom: -16px;
				left: 50%;
				-webkit-transform: translateX(-50%);
				transform: translateX(-50%);
				width: 0;
				height: 0;
				border-left: 30px solid transparent;
				border-right: 30px solid transparent;
				border-top: 20px solid #f24579;
		}

		div.index_media ul {
				width: 90%;
		}

		div.index_media ul li{
				width: 100%;
		}

    /* 掛け合わせのメソッド */
    div.index_change{padding: 20px 0;}

    /*div.index_change div.change_left{
        background:none;
        padding:0 0 0;
        width: 100%;
    }*/
    
    div.index_change h3{
    font-size: 4.5vw;
    margin-bottom: 20px;
    line-height: 1.8em;
    }

    div.index_change h3 span{
        font-size: 6vw;
        display: block;
    }

    div.change_right{
        margin:20px 0 20px 0;
        text-align:center;
        width: 100%;
        display: block;
    }

    /*div.change_right h4{
        font-size: 6vw;
        font-weight: bold;
        margin-bottom: 20px;
    }*/

    div.change_right ul{margin-bottom: 20px;}

    div.change_right ul li{
        display: inline-block;
        margin: 0 1% 0 0;
        padding-right: 10px;
        width: 28%;
        background: url(../images/pages/index/icon_batu.png) right 8% no-repeat;
        background-size: 8px;
    }


    div.change_right ul li span{
        display: block;
        font-size: 3vw;
        font-weight: bold;
        margin-bottom: 15px;
    }

    div.change_right p{
        line-height: 1.8em;
        text-align: left;
    }
    
    div.change_right p br{
        display: none;
    }

			div.index_change h4{
				font-size: 5vw;
				padding-top: 10px;
			}
			
			
			.index_change_trainer {
					flex-wrap: wrap;
			}
			
			.index_change_trainer .textarea {
					width: 100%;
			}
			
			.index_change_trainer .textarea p {
					text-align: center;
					font-size: 4.8vw;
					margin-bottom:20px;
			}
			
			
			.index_change_trainer .textarea p span{
					font-size: 130%;
					display:inline-block;
			}
			.index_change_trainer .imgarea{
					width:100%;
			}
			.index_change_trainer .imgarea img{
					width: 40%;
					margin: 0 auto;
			}
			
			.index_change_trainer .imgarea p{
					font-size: 12px;
					margin-top:5px;
					text-align:center;
			}

    /* 声 */
    div.index_voice div.iv_unit{width: 100%;}
    div.index_voice div.iv_unit div{
        padding: 10px 4%;
        font-size: 4vw;
        line-height: 1.6em;
    }
    
    div.index_voice div.iv_unit p br {
	   display: none;
    }
    
    div.index_voice div.iv_unit h3 img {
	    overflow: hidden;
		object-fit: cover;
    }
    
    .swiper-slide {
	width: 100% !important;
	margin-right: 0 !important;
	}

    /* beforeafter */
    div.index_ba{
        background: url(../images/pages/index/bg_ba.jpg) bottom right no-repeat;
        background-size: cover;
        padding: 20px 0;
    }

    ul.be_list{
        margin-bottom: 20px;
    }

    ul.be_list li{
        width: 49%;
        margin: 0 1% 10px 0;
    }

    ul.be_list li a{
        background: #fff;
        padding: 5px;
        box-sizing: border-box;
        display: block;
        color: #000;
        text-decoration: none;
    }

    ul.be_list li h4{
        overflow: hidden;
        width: 100%;
        height: 150px;
        position: relative;
    }

    ul.be_list li p.kg{
        width: 110px;
        height: 110px;
        border-radius: 60px;
        line-height: 110px;
        font-size: 5vw;
    }

    ul.be_list li dl{
        padding: 0 5px 8px;
    }

    ul.be_list li dl dt{
        border-radius: 3px;
        padding: 3px;
        font-size: 3.6vw;
        text-align: center;
    }

    ul.be_list li dl dd{
        margin-top: 8px;
    }
    
    ul.be_list li dl dd.tar{font-size: 3.5vw;}


    /* おすすめコース */
    div.index_course{
        background:#f2f2f2 url(../images/pages/index/bg_course.jpg) 45% top no-repeat;
        background-size: 120%;
        padding: 40px 0 30px;
    }

    div.index_course ul {
        margin-top: 10px;
    }

    div.index_course ul li{
        width: 48%;
        margin-bottom: 2%;
        border-left: 2px solid #52acc1;
    }
    
    div.index_course ul li h4{
    background-color: #52acc1;
    padding:8px 5px;
    }
    
    div.index_course ul li p.c_photo{
    float:none;
    width: 100%;
    }
    div.index_course ul li p.c_photo img{
        width: 100%;
    }
    div.index_course ul li dl{
        padding: 20px 5px 10px;
        float:none;
        width: 100%;
        box-sizing: border-box;
    }

    div.index_course ul li dl dt{
        font-size: 4.5vw;
        margin-bottom: 8px;
        font-weight: bold;
    }

    /* 他社との比較 */
    div.index_price{ margin-bottom: 20px;}

    div.index_price table{
        width: 100%;
        text-align: center;
    }

    div.index_price table th,
    div.index_price table td{
        border: 1px solid #afafaf;
        padding: 10px 3px;
        box-sizing: border-box;
        width: 22%;
        font-size: 3vw
    }
    div.index_price table tr th{font-size: 4.5vw; }
    div.index_price table tr td:nth-child(2){
        width: 30%;
        background: #f9d9ec;
        font-size: 4vw;
        font-weight: bold;
    }

		div.index_price table tr td:nth-child(2) span.red-txt{
				font-size: 70%;
		}

    /* コラム */
    ul.column_list > li{
        width: 48%;
        margin: 0 1% 20px;
        padding: 0;
    }

    ul.column_list li h4 img{
        object-fit: cover;
        width: 100%;
        height: 100px;
    }

    ul.column_list li p{margin-top: 10px;}

    ul.column_list li p.time{
        font-size: 11px;
    }

    ul.column_list li ul li{
        float: left;
        width: 48%;
        font-size: 2.5vw;
    }

    ul.column_list li p a{
        font-size: 3vw;
    }
		.campaginbnr_area {
				max-width: 85%;
				margin: 20px auto 10px;
		}

    /* 無料カウンセリング */

    div.index_counseling{
        background: url(../images/pages/index/img_counseling.jpg) center top no-repeat;
        background-size:cover;
        padding: 20px 4%;
    }

    div.index_counseling div.ic_left{
        float: none;
        width: 100%;
    }

    div.index_counseling div.ic_left div{
        background: #f7dcec url(../images/pages/index/img_free.png) left top no-repeat;
        padding: 30px 10px 10px;
    }

    div.index_counseling div.ic_left div h3{
        margin-bottom: 30px;
        text-align: center;
    }

    div.index_counseling div.ic_left div h3 span{
        color: #bf3a8f;
        font-size: 6vw;
        line-height: 1.2em;
        display: block;
    }

    div.index_counseling div.ic_left div p.btnparts a{
        width: 90%;
    }
    
    /* --------------
    footer
    -------------- */

    footer {
        background: url(../images/common/f_border.png) repeat-x;
        background-size: 400px 3px;
        padding: 20px 0 80px;
    }

    div.f_h h5{float: none; width: 60%; margin: 0 auto;}
    div.f_h .footbnr{float: none; margin-bottom: 15px;}
    div.f_h .footbnr p{float: none; width: 70%; margin: 15px auto 0;}
    div.f_h .footbnr p:first-of-type{width: 50%;}
		div.f_h .footbnr p.f_shop_bnr {width: 100%; margin-left: -10px;}
	
		.ft_shop_btr{width: 90%;margin: 0 auto 20px;}
    
    .bnrsite{margin: 0 0 30px; text-align: center;}
    .bnrsite li{
        float:none;
        display: inline-block;
        margin-right:0;
        margin-bottom: 15px;
    }

    .sitemap {padding: 10px 0 10px;}

	.sitemap .ft-menu-flex .ft-menu-box {
		margin-bottom: 20px;
		width: 100%;
	} 

    .sitemap ul {
        width: 100%;
        float: none;
        padding: 0 0 0 0;
    }

    .sitemap ul li {
        margin-bottom:0;
			border-top: 1px solid #ddd;
    }

    .sitemap ul li a {
        text-decoration: none;
        color: #000;
        display:block; 
        padding: 10px;
    }
    
    .sitemap ul:last-child{border-bottom: 1px solid #ddd;}
    
    .sitemap ul li:first-child{font-weight: bold;}
    .sitemap ul li:nth-child(n+2) a{padding: 10px 10px 10px 25px;}
    
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(1) li:first-child{border-left: 5px solid #ff4e17; border-top: 1px solid #ff4e17;}
	.sitemap .ft-menu-flex .ft-menu-box ul:nth-child(1) li:nth-child(n+2){border-left: 2px solid #ff4e17;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(2) li:first-child{border-left: 5px solid #52acc1; border-top: 1px solid #52acc1;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(2) li:nth-child(n+2){border-left: 2px solid #c3e5e2;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(3) li:first-child{border-left: 5px solid #e6245e; border-top: 1px solid #e6245e;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(3) li:nth-child(n+2){border-left: 2px solid #eac3df;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(4) li:first-child{border-left: 5px solid #a82480; border-top: 1px solid #a82480;}
	.sitemap .ft-menu-flex .ft-menu-box ul:nth-child(4) li:nth-child(n+2){border-left: 2px solid #a82480;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(5) li:first-child{border-left: 5px solid #1abf78; border-top: 1px solid #1abf78;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(5) li:nth-child(n+2){border-left: 2px solid #aae2c8;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(6) li:first-child{border-left: 5px solid #52acc1; border-top: 1px solid #52acc1;}
    .sitemap .ft-menu-flex .ft-menu-box ul:nth-child(6) li:nth-child(n+2){border-left: 2px solid #c3e5e2;}
    
	
	.sitemap_list_ttl > a{
		display: inline-block !important;
	}
.sitemap ul li .sitemap_list_child {
	margin: 0;
	padding-left: 1em;
	padding-right: 0;
	box-sizing: border-box;
}

.sitemap ul li .sitemap_list_child li{
	border: none !important;
}

.sitemap ul li .sitemap_list_child li:first-child{
	font-weight: normal;
}

.sitemap ul li .sitemap_list_child li a{
	border-top: 1px solid #ddd;
}

.accr_arrow{
		top: 1em;
    left: 13em;
    width: 1.2em;
    height: 1.25em;
}

	
    p.copy {
        text-align: center;
        font-size: 3vw;
    }
    
    
    /* --------------
	
	monitor
	
	-------------- */
		
	.monitor_inner h3 {
		margin-bottom: 30px;
	}
		
	.cond {
	    margin-bottom: 30px;
	}
		
	.cond .cond_l {
	    float: none;
	    width: 100%;
	}
	
	.cond .cond_l .cond_l_box {
	    width: 94%;
	    margin: 0 auto;
	    padding: 25px 0;
	}
		
	.cond .cond_l h4 {
		font-size: 4.8vw;
	}
		
	.cond .cond_l h4 span img {
		width: 8%;		
	}
	
	.cond_l_box ul li {
	    font-size: 3.8vw;
	}
	
	.cond_r {
	    float: none;
	    margin: 10px 0 0 0;
	    font-size: 3.5vw;
	}
	
	.monitor_campaign {
	    width: 95%;
	}
		
	.monitor_campaign img {
		width: 100%;
	}
	
	.campaign_area {
		text-align: center;
		margin-bottom: 40px;
	}
		
	.monitor_campaign p.cp_img {
		display: none;
	}
	
	.cp_info {
	    width: 100%;
	}
	
	.cp_info h3 {
		margin-bottom: 30px;
	}
	
	.cp_info table {
	    width: 95%;
	    margin: 0 auto 40px;
	}
	
	.cp_info table tr th, .cp_info table tr td {
		padding: 15px 10px 15px;
		box-sizing: border-box;
	}
	
	.cp_info table tr th {
		width: 30%;
		padding: 15px 15px 15px 0;
	}
	
	.cp_info table tr td {
		width: 64%;
		padding: 15px 0 15px 15px;
	}


	
	
	/* --------------

	contents

	-------------- */ 

	#page_ttl h2{
		text-align:left;
		padding: 20px 0 20px 10px;
		width:100%;
		height: auto;
		box-sizing: border-box;
		font-size: 1em;
	}

	#page_ttl h2 span{
		font-size:0.9em;
		font-weight: bold;
		margin-bottom: 5px;
		display: block;
		letter-spacing:1px;
	}
	
	#page_ttl.ba_bg {
	    background: url(../images/pages/beforeafter/bg_main.jpg) left 10px top no-repeat;
	    background-size: cover;			
	}
	
	#page_ttl.gym_bg h2{background: url(../images/pages/gym/bg_ttl.png) center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.service_bg h2{background: url(../images/pages/service/bg_ttl.png)center left 140% no-repeat; background-size:  150%;}
    #page_ttl.day_bg h2{background: url(../images/pages/day/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.about_bg h2{background: url(../images/pages/about/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.faq_bg h2{background: url(../images/pages/faq/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.trainer_bg h2{background: url(../images/pages/trainer/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.flow_bg h2{background: url(../images/pages/flow/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.ba_bg h2{background: url(../images/pages/beforeafter/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.counseling_bg h2{background: url(../images/pages/counseling/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.contact_bg h2{background: url(../images/pages/contact/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.column_bg h2{background: url(../images/pages/column/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}
	#page_ttl.privacy_bg h2{background: url(../images/pages/privacy/bg_ttl.png)center  left 140% no-repeat; background-size:  150%;}

	h3.subttl {
		font-size: 1.5em;
		line-height: 1.5em;
		text-align: center;
		position: relative;
		margin-bottom: 30px;
		z-index: 1;
	}

	h3.subttl::after{
		width: 8%;
		content: "";
		position: absolute;
		top:0;
		left: 0;
		right: 0;
		bottom: -10px;
		margin:auto;
	}


	/* パンくず */
	#breadcrumbs{
		font-size: 11px;
		padding: 10px 0 5px;
	}



	/* --------------

	gym　-店舗一覧-

	-------------- */ 
    
    .scau{
    text-align:left;
    margin-bottom: 30px;
    }


	.page_inner {
		margin: 40px 0 40px;
	}

	.store_info {
		background: #f8f8f8;
		width: 100%;
		margin: 0 auto 20px;
	}
.store_info:last-child {
	margin-bottom: 40px;
}


	.store_info h3 {
		font-size: 5.2vw;
        line-height: 1.8em;
		border-left: 5px solid #bf3a8f;
		padding: 8px 10px;
		margin-bottom: 20px;
	}
    
    .store_info h3 span{
        display: block;
        font-size: 3vw;
    }

	.info_cont {
		width: 100%;
		margin: 0 auto 20px;
		padding:20px 10px;
		box-sizing: border-box;
	}

	.info_l {
		float:none;
	}

	.icon_area {
		width:100%;
		margin-bottom: 20px;
	}

	.icon_area ul li {
		display: inline-block;
		width: 22%;
		vertical-align: top;
		margin: 10px 1% 0 0;
	}

	.info_r {
		float:none;
		width:100%;
	}

	.info_r .tel,
	.info_r .access {
		margin: 0 0 10px 10px;
	}

	.info_r .tel span {
		font-size: 1.2em;
	}

	.info_r .access span {
		margin-top: 5px;
		display: inline-block;
	}
	
	.info_r iframe{width: 100%;}

	.map_btn {
		text-align: center;
		margin-top: 10px;
	}

	.map_btn a {
		width: 80%;
	}
	.info_r h4 {
		padding: 10px 5px;
		margin-bottom: 10px;
		font-weight: bold;
	}

.company_cont {
    width: 100%;
		margin-bottom:40px;
}
	
.company_cont table {
		width: 95%;
		margin: 0 auto 40px;
}

.company_cont table tr th, .company_cont table tr td {
	padding: 15px 10px 15px;
	box-sizing: border-box;
}

.company_cont table tr th {
	width: 16%;
	padding: 15px 15px 15px 0;
}

.company_cont table tr td {
	width: 64%;
	padding: 15px 0 15px 15px;
}
/*▼▼▼店舗一覧ページ追記分▼▼▼*/
	.store_menu_list li a {
		font-size: 4vw;
		padding: 12px;
	}

	.store_menu_list li a .name {width: 4em;}
	.store_menu_list li a .num {font-size: 3.5vw;}

	.store_menu_list {margin-bottom: 40px;}
	.area_item {
		margin-top: -40px;
		padding-top: 40px;
	}
	.area_item .area_ttl {font-size: 1.5em;}

	.area_item .area_ttl_en {
		font-size: 3.5vw;
		margin-bottom: 20px;
	}

	.area_item .area_ttl_en:before, 
	.area_item .area_ttl_en:after {width: 5vw;}
	.area_item .store_box{margin-bottom: 60px;}
	.store_box .store_info{width: 100%;max-width: 100%;margin-bottom: 30px;}
	.store_info .info_cont{padding: 20px 10px;}
	.store_info .info_cont h3 {
		font-size: 4.8vw;
		background-position: top 45% right 0px;
		padding: 8px 30px 8px 15px;
	}
	.store_info .info_cont .info_child { display: none;}
	.store_info .info_cont .info_l img{max-width: 100%;}	

	#area_kanagawa .store_info .info_r .shop_name{
		font-size: 4vw;
		margin-bottom: 10px;
	}
	#area_kanagawa .store_info .info_r .access{
		margin-bottom: 30px;
	}

/*▲▲▲店舗一覧ページ追記分▲▲▲*/
	
	/* --------------

	service　-料金・サービス-

	-------------- */ 
	.course_notice {
			padding: 15px 10px;
			width: 100%;
			margin-bottom: 15px;
	}

	.course_notice p {
			font-size: 5vw;
	}
	.course {
		width: 100%;
	}

	.course_info {
		width: 90%;
		margin: 0 auto 40px;
		padding: 30px 0;
	}

	.course_l {
		float: none;
		width: 100%;
		margin-right: 0;
	}

	p.caption {
		width: 100%;	
		margin-bottom: 20px;
		padding: 8px;
		box-sizing: border-box;
	}

	.course_l .course_ttl {
		margin-bottom: 20px;
	}

	.course_ttl h4 {
		font-size: 23px;
		font-weight: bold;
	    line-height: 1.3em;
        text-align: center;
	}
	
	.course_ttl h4 span {
		display: block;
	}

	.course_ttl h4 span.batsu,
	.course_ttl h4 span.maru,
	.course_ttl h4 span.sankaku {
		font-size: 25px;
		padding-left: 10px;
	}
	
	.course_l ul.price_list li {
		display: block;
	}

	.course_l ul.price_list li.price {
	    margin-bottom: 15px;
	}

	.course_l ul.price_list li.uchiwake {
		display: block;
	    margin-bottom: 10px;
	}

	.course_l ul.price_list li img {
		margin-left: 0;
	    width: 6%;
	    margin-top: 3px;
	}
	
	.txt_area {
		margin-bottom: 20px;
	}

	.course_r {
		float: none;
	}

	.option .course_l {
		width: 100%;
		margin-right: 0;
	}

	.option .caption {
		width: 100%;
	}

	.option ul.lymph_price {
		width: 100%;
		padding: 0;
	}

	.option ul.lymph_price li {
		font-size: 23px;
	}

	.encho {
		width: 100%;
		padding: 20px 0;
	}

	.encho_inner {
		width: 100%;
		margin: 0 auto;
	}

	.encho_inner .box {
		float: none;
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
	}

	.encho_inner .box .plan {
		width: 80%;
		margin: 0 auto;
		text-align: center;
	}

	.encho_inner .box .plan p {
		font-size: 25px;
		line-height: 1.4;
	}

	.encho_inner .box span {
		padding-bottom: 10px;
		margin-bottom: 10px;
		width: 100%;
		font-size: 15px;
	}

	.encho_inner .encho_price {
		float: none;
		width: 90%;
		color: #000;
		margin: 0 auto;
	}

	.encho_price p {
		padding: 20px 16px;
		margin: 15px 0;
		font-size: 20px;
		width: 90%;
	}

	.encho_price dl dt {
		width: 20%;
	}
	
	.encho_price dl dd {
		width: 60%;
	}

	.f_bnr_list {
		width: 90%;
		margin: 0 auto 50px;
	}

	.f_bnr_list ul li {
		float: none;
		margin: 0 0 10px 0;
	}

	/* --------------

	about　-outlineについて　

	-------------- */ 
    
    .owner{
    background-size:auto 100%;
    padding: 30px 0;
    }

    .owner .inner{
        background: url(../images/pages/about/img_owner.jpg) center top no-repeat;
        background-size: 100%;
        padding: 52% 0 0 0;
    }

    .owner_text{
        float: none;
        width: 100%;
        padding: 15px;
    }

    .owner_text h3{
        font-size: 5vw;
    }
    .owner_text p{margin-bottom: 20px;}

	.about_list {
		background-size: contain;
		padding: 25px 0;
		margin-top: 30px;
	}

	.about_list .list_box {
		width: 100%;
		margin: 0 auto;
		background: #fff;
	}

	.list_inner {
		width: 90%;
		margin: 0 auto;
        padding: 10px;
	}

	.list_box ul {
		width: 100%;
		float: none;
		padding: 25px 0 0 0;
	}

	.list_box ul li {
		margin-bottom: 10px;
	}
	
	.list_box ul li:last-child {
		margin-bottom: 0;
	}

	.about_cont {
		margin-bottom: 50px;
	}

	.about_info {
		width: 90%;
		margin: 0 auto 0;
		padding: 40px 0;
	}

	p.shidou {
		width: 90%;
		padding: 15px;
		margin: 0 auto 10px;
		font-size: 32px;
		line-height: 1.3;
	}
	
	p.shidou span {
		display: block;
	}

	.about_info .detail01,
	.about_info .detail02 {
		width: 100%;
		margin: 0 auto;
	}

	.detail01 .img_txt_area p img {
		float: none;
		width: 100%;
		height: auto;
	}

	.detail01 .img_txt_area .txt {
		float: none;
		width: 100%;
		height: auto;
		position: static;
	}

	.detail02 .img_txt_area p img {
		float: none;
		width: 100%;
		height: auto;
	}
	
	.detail02 .img_txt_area .txt {
		float: none;
		width: 100%;
		height: auto;
		position: static;
	}

	.txt .txt_inner {
		width: 90%;
		margin: 0 auto;
		position: static;
		bottom: 0;
		left: 0;
	    padding: 30px 0;
	}

	.img_txt_area .txt .txt_inner h4 {
		font-size: 27px;
		margin-bottom: 20px;
		padding-top: 0;
		line-height: 1.3;
	}

	.tokucho {
		margin-bottom: 80px;
	}

	.tokucho ul {
		width: 100%;
		display: inline;
		padding-bottom: 20px;
	}

	.tokucho ul li {
		width: 100%;
		font-size: 16px;
		padding: 12px 0;
		display: block;
		margin-bottom: 15px;
	}

	.tokucho ul li span {
		font-size: 12px;
	}
	.history_cont {
    width: 90%;
		margin:0 auto80px;
}
.history_cont p.history_img {
    width: 60%;
    max-width: 90%;
		margin-bottom:10px;
}
.history_cont .history_name {
    font-size:4.6vw;
		margin-bottom:20px;
}

	.history_cont dl {
	overflow:hidden;
	/*clear:both;*/
	flex-wrap:wrap;
	border-top: 1px solid #f1f1f1;
	padding: 3% 0;
}

.history_cont dl:last-child{
	border-bottom: 1px solid #f1f1f1;
}

.history_cont dl dt {
	width: 100%;
	float: none;
	text-align:left;
	font-size: 14px;
	margin: 0 0 2%;
}

.history_cont dl dd {
	width: 100%;
	float: none;
	font-size: 14px;
	line-height:1.8em;
}


	/* --------------

	flow　-入会までの流れ-　

	-------------- */ 
	
	.step {
	margin-bottom: 50px;
}

	.step .step_img {
		float: none;
		position: relative;
		width: 100%;
		margin-right: 30px;
	}

	.step .step_img h3 img {
		position: absolute;
		top: 0;
		left: 0;
		width: 20%;
	}

	.step .step_img p img {
		margin: 20px 0 0 20px;
		width: 94%;
	}

	.step .step_txt {
		float: none;
		width: 100%;
	    margin-top: 25px;
	}

	.step .step_txt h4 {
		font-size: 20px;
		margin-bottom: 10px;
	}

	.step .step_txt h4::before {
		margin-right: 8px;
		vertical-align: middle;
	}

	.step .step_txt h4 span {
		font-size: 14px;
	}

	.step_txt a.mail {
		padding: 15px 20px;
		font-size: 16px;
	}	
	
	/* --------------

	trainer　-トレーナー紹介-　

	-------------- */ 
	
	.trainer {
		margin-bottom: 50px;
	}

	.trainer.nobuyo {
		background: url(../images/pages/trainer/trainer_nobuyo.png) no-repeat;
		background-size: 100%;
		padding-top: 70%;
	}

	.trainer.hirokazu {
		padding-bottom: 60px;
		background: url(../images/pages/trainer/trainer_hirokazu.png) no-repeat right top,
					url(../images/pages/trainer/trainer_l.png)no-repeat right 80px bottom;;
		background-size: 85%;
		padding-top: 70%;
	}

	.trainer.suzuki {
		background: url(../images/pages/trainer/trainer_suzuki.png) no-repeat;
		background-size: 100%;
		padding-top: 70%;
	}

	.trainer.sanbin {
		padding-bottom: 60px;
		background: url(../images/pages/trainer/trainer_sanbin.png) no-repeat right top,
					url(../images/pages/trainer/trainer_l_2.png)no-repeat right 80px bottom;
		background-size: 100%;
		padding-top: 70%;
	}
    
    .trainer.tamami {
		background: url(../images/pages/trainer/trainer_tamami.png) no-repeat;
		background-size: 100%;
		padding-top: 70%;
	}
	
	.trainer.new {
		padding-bottom: 60px;
		background: url(../images/pages/trainer/trainer_new.png) no-repeat right top,
					url(../images/pages/trainer/trainer_l_2.png)no-repeat right 80px bottom;
		background-size: 100%;
		padding-top: 70%;
	}


	.t_info {
		padding: 30px 18px;
		width: 90%;
		float: none;
		margin: 0px auto;
	}

	.l_box {
		padding: 30px 18px;
		width: 90%;
		float: none;
		margin: 0px auto;
	}

	.t_info h3 {
		font-size: 25px;
		margin-bottom: 20px;
	}

	ul.store_list {
		margin-bottom: 20px;
	}

	.t_info h4 {
		font-size: 20px;
		line-height: 1.4;
		margin-bottom: 20px;
	}

	/* --------------

	beforeafter　-卒業生の皆様-　

	-------------- */ 
	
	.beforeafter_area {
		overflow: hidden;
	}
	
	.beforeafter_area .dflex_wrap {
	
	}
	
	ul.ba_list{
        margin-bottom: 20px;
    }

    ul.ba_list li{
	    width: 47%;
	    margin: 0 1% 20px;
	    padding: 0;
    }
    
    ul.ba_list li:nth-child(even){
        float: right !important;   
	}

    ul.ba_list li a{
        background: #fff;
        padding: 5px;
        box-sizing: border-box;
        display: block;
        color: #000;
        text-decoration: none;
    }

    ul.ba_list li h4{
        overflow: hidden;
        width: 100%;
        height: 150px;
        position: relative;
    }

    ul.ba_list li p.kg{
        width: 100px;
        height: 100px;
        border-radius: 60px;
        line-height: 100px;
        font-size: 5vw;
    }

    ul.ba_list li dl{
        padding: 0 5px 8px;
    }

    ul.ba_list li dl dt{
        border-radius: 3px;
        padding: 3px;
        font-size: 3.6vw;
        text-align: center;
    }

    ul.ba_list li dl dd{
        margin-top: 8px;
    }
    
    ul.ba_list li dl dd.tar{
		font-size: 3.2vw;
	}
	
	/*.name_area {
		position: inherit;
		bottom: 20px;
		right: 8px;
	}*/
	
    ul.ba_cat li{
    width: 46%;
    margin: 0 1%;
    margin-bottom:20px;
    }
    
	/* --------------

	BeforeAfter -卒業生の皆様(詳細)-

	-------------- */

	.ba_s p.course_type {
		width: 90%;
		margin: 0 auto 20px;
	}

	.ba_s h3 {
		font-size: 20px;
		line-height: 1.4;
	}

	.ba_s h3 span {
		font-size: 14px;
		font-weight: normal;
		margin: 10px 0 20px;	
		display: block;
	}

	.result {
		margin-bottom: 60px;
	}

	.result p img {
		width: 100%;
		height: 400px;
		object-fit: cover;
		overflow: hidden;
		float: none;
 	    margin-right: 0;
	}

	.result table {
		float: none;
		width: 100%;
		border-collapse: separate;
		border-spacing: 0px 10px;
	}

	.result table th.g1,
	.result table th.p1 {
		padding: 10px 0;
		display: none;
	}

	.result table td.g2 {
		font-size: 18px;
		text-align: center;
	}

	.result table th.g2 {
		width: 150px;
	}

	.result table th.g2 p {
		padding: 15px 0;
		width: 80%;
		margin: 0 auto;
		color: #fff;
		letter-spacing: 0.1em;
		font-size: 14px;
	}

	.result table td.g2 span.weight {
		font-size: 20px;
		padding-left: 0;
	}

	td.g2 span.weight::before {
		content: "";
		margin-right: 0;
		margin-left: 8px;
		vertical-align: middle;
		background-image: url(../images/pages/beforeafter/arrow.png);
		background-repeat: no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		display: inline-block;
	}

	.result table td.g2 span.weight span {
		font-size: 17px;
	}

	.result table td.p2 {
		font-size: 25px;
		padding: 14px 5px 14px 10px;
		margin-left: 20px;
		width: 100%;
		box-sizing: border-box;
	}

	.result table td.p2 span {
		font-size: 20px;
	}

	.result table th.g2,
	.result table td.g2 {
		padding: 14px 0;
	    line-height: 1.3;
		width: 70%;
		box-sizing: border-box;
	}

	.ba_img {
		margin-bottom: 0;
	}


	.ba_img .angle {
		width: 100%;
		margin-right: 0;
		float: none;
		margin-bottom: 40px;
	}

	.ba_img .angle:last-child {
		margin-right: 0;
	}

	.ba_img .angle span {
		width: 90%;
		margin: 0 auto 15px;
	}

	.angle p.before,
	.angle p.after {
		float: left;
	    width: 50%;
	}

	.voice {
		border: 1px solid #ccc;
		border-radius: 5px;
		padding: 25px;
	}

	.voice h4 {
		font-size: 20px;
		font-weight: bold;
		padding: 5px 0 5px 10px;
		border-left: 10px solid #e6245e;
		margin-bottom: 15px;
	}

	.voice p {
		border-top: 1px dotted #ccc;
		padding-top: 15px;
		font-size: 14px;
		line-height: 1.8;
	}

	
	/* --------------

	faq　-よくある質問-　

	-------------- */ 
	
	div.faq{
		border: 1px solid #ccc;
		padding: 20px;
		margin-bottom: 20px;
	}

	div.faq h4{
		font-size: 14px;
		position: relative;
		padding: 0 30px 0 40px;
	}

	div.faq h4:hover{
		cursor:pointer;
	}

	div.faq h4 span{
		font-size: 30px;
		margin-right: 20px;
		position: absolute;
		top: 0;
		left: 0;
	}

	div.faq h4::after {
		content: "+";
		font-size: 30px;
		float: none;
		position: absolute;
		top: 0;
		right: 0;
	}

	div.faq h4.active::after {
		content: '-';
		padding-right: 5px;
		position: absolute;
		top: 0;
		right: 0;
	}

	.faq p {
		width: 90%;
		margin: 20px auto 0;
		padding: 20px 15px;
		font-size: 14px;
	}

	.faq p.child {
		display: none;
	}
    
    /*▼------------------　

	  ブログ一覧
	
    ▲---------------------*/
    .blogleft{
        float: none;
        width: 100%;
    }

    .blogleft ul.column_list > li{
        width: 48%;
        margin: 0 1% 50px;
    }

    .blogleft ul.column_list li h4 img{
        object-fit: cover;
        width: 100%;
        height: 100px;
    }

    /* ブログ検索 */
    .serchunit{
        background: #eff6fc;
        padding: 10px;
        margin: 0 0 20px;
    }

    .serchunit .serchbox p:first-of-type{
        float: left;
        width: 72%;
    }
    .serchunit .serchbox p:first-of-type input{
        width: 100%;
        box-sizing: border-box;
        padding: 10px 10px;
    }

    .serchunit .serchbox p:last-of-type{
        float: right;
        width: 25%;
    }
    .serchunit .serchbox input#searchsubmit{
        padding: 8px 0;
        font-size: 14px;
        border-radius:6px;
    }

    .serchtext{
        margin: 0 0 30px;
        font-size: 14px;
        text-align: center;
        font-weight: bold;
    }

    ul.column_list li.noserch{
        width: 100%;
        margin: 0 0 30px 0;
    }
	
	
/*▼------------------　

	  ブログ詳細
	
▲---------------------*/

#blog_area_page {
	overflow:  hidden;
	padding: 10% 0;
}

#blog_area_page .blog_information {
	width: 100%;
	overflow: hidden;
	float: none;
	margin: 0 0 10%;
}

#blog_area_page .blog_information a {
	color: #000;
}

#blog_area_page p.blog_day {
	font-size: 4vw;
	margin: 0 0 5px;
}

#blog_area_page .blog_information h3.b_title {
	font-size: 4vw;
	border-bottom: 1px solid #d0d0d0;
	padding-bottom: 5px;
	margin-bottom: 30px;
	font-weight: bold;
	line-height: 1.8em;
}


#blog_area_page .blog_information .b_content {
	border-bottom: 1px solid #ccc;
	margin-bottom: 10px;
	word-wrap: break-word;
	box-sizing: border-box;
}

#blog_area_page .blog_information .b_content img {
	width: 100%;
	height: auto;
}


#blog_area_page .blog_information .b_content p {
	margin-bottom: 20px;
	font-size: 3.6vw;
	line-height: 1.8em;
}

#blog_area_page .blog_information .b_content .b_info {
	margin: 100px 0 20px;
	border-top: 1px solid #ccc; 
}

#blog_area_page .blog_information .b_content .b_info p {
	clear: both;
	padding-top: 35px;
	line-height: 2.0em;
}

#sidebar {
	width: 100%;
	overflow: hidden;
	float: none;
}

#sidebar h3 {
	text-align: center;
	color: #52acc1;
	font-size: 18px;
	border-bottom: 1px solid #d0d0d0;
	padding: 0 0 15px;
	margin-bottom: 15px;
	font-weight: normal;
}

#sidebar ul {
	margin-bottom: 30px;
}

#sidebar ul li {
	border-bottom: 1px dashed #4d4d4d;
	box-sizing: border-box;
	margin-bottom: 5px;

}

#sidebar ul li span {
	display: block;
	text-indent: 10px;
	font-size: 13px;
}

#sidebar ul li span a {
	color: #8dae45;
	text-decoration: underline;
}

#sidebarul li a {
	color: #333;
	text-decoration: none;
	font-size: 13px;
	display: block;
	padding: 10px;
}

#sidebar ul li a:hover {
	color: #fff;
	background-color: #52acc1;
	text-decoration: underline;
}

/*--追記--*/
    
ul.single_catlist {
	overflow: hidden;
	margin: 0 0 15px;
}

ul.single_catlist li{
    float: left;
    width: 30%;
    margin: 5px 1% 0;
    text-align: center;
    font-size: 12px;
}

ul.single_catlist li a{
	display: block;
    border: 1px solid #52acc1;
    padding: 5px 0;
    color: #52acc1 !important;
    text-decoration: none !important;
}

ul.single_catlist li a:hover{
    background: #52acc1;
    color: #fff;
}

.page_nav {
	padding: 50px 0 0;
	clear: both;
}


.page_nav a {
	padding: 10px 30px;
	font-size: 14px;
	display: block;
    color: #333 !important;
    text-decoration: none !important;
}

.page_nav a:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
}

.page_left {
	width: 100%;
	float: none;
	text-align: center;
    background:#f4cfb5;
    border-radius: 0;
}

.page_center {
	width: 100%;
	float: none;
	text-align: center;
    background: #eac3df;
    color: #333 !important;
    margin: 5% 0;
}

.page_right {
	width: 100%;
	float: none;
	text-align: center;
    background: #aae2c8;
    border-radius: 0;
}

/* --------------

contact -お問い合わせ-

-------------- */

h3.contact_ttl01 {
	text-align: center;
	font-size: 5vw;
	font-weight: bold;
	margin: 0 0 20px;
}

p.contact_txt01 {
	text-align: center;
	font-size: 3.4vw;
	line-height: 2.0em;
	margin: 0 0 40px;
}


.formTable {
	width: 100%;
	text-align: left;
	box-sizing: border-box;
}

table.formTable th,
table.formTable td {
	width: 100% !important;
	display: block;
	box-sizing: border-box;
	border:1px solid #c3c3c3;
	border-collapse: collapse;
}

table.formTable td .checkonline{
	margin-bottom: 10px;
}
	
table.formTable td .cont_inputb{
	width:40%;
	border: none;
	padding: 15px;
	box-sizing: border-box;
	font-size: 16px;
	border: 1px solid #ccc;
}

.mwform-checkbox-field input[type=checkbox] {
	width: 14px !important;
	height: 14px !important;
	vertical-align: middle;
}

.mwform-radio-field input[type=radio] {
	width: 14px !important;
	height: 14px !important;
	vertical-align: middle;
}

.mwform-checkbox-field input, .mwform-radio-field input {
	margin-right: 5px !important;
}

.mw_wp_form .vertical-item {
	display:  block !important;
	margin-right: 10px !important; 
}

p.listen_txt {
	font-size: 3.2vw;
	line-height: 1.8em;
	margin: 0 0 20px;
}

p.btn-poli_txt {
	font-size: 3.4vw;
	margin: 0 0 10px;
}

.mwform-checkbox-field label, .mwform-radio-field label {
	font-size: 4vw !important;
}


#submit input{
	background: #de1772;
	color: #fff;
	border:1px solid #de1772;
	width: 100%;
	padding: 20px 0;
	font-size: 5vw;
	border-radius: 50px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

#submit input.backbtn{
	background: #408a84;
	color: #fff;
	border:1px solid #408a84;
	width: 100%;
	padding: 20px 0;
	font-size: 5vw;
	border-radius: 50px;
	margin-right: 0;
	margin-bottom: 5%;
}

.contact-error p,
.contact-text1 p,
.contact-complete p {
	text-align: left;
	color: #c00;
	border: 4px double #ccc;
	margin: 0 0 5%;
	padding: 4%;
	box-sizing: border-box;
	font-size: 4vw;
}
	table.formTable .mwform-radio-field.horizontal-item  label{
    margin: 0 1% 10px;
    width: 46%;
    }
    
    
/*-point_area--*/

.point_area {
	clear:both;
	overflow:hidden;
	padding: 10% 4%;
	box-sizing:border-box;
	text-align:center;
}

ul.point_list {
	width: 96%;
	margin:0 auto 2%;
	overflow:hidden;
	text-align:center;
}

ul.point_list li {
	float:none;
	width: 100%;
	min-height: inherit;
	margin: 0 0 5% 0;
	background-color:#f24579;
	text-align:center;
	color:#fff;
	padding: 10px 10px;
	box-sizing: border-box;
}


ul.point_list li:last-child{
	float:none;
	margin: 0;
}

p.point_number {
	font-size:10vw;
	margin: 0 0 1%;
	padding: 5% 0 0;
}

p.point_number span {
	font-size:5vw;
	display:block;
}

h3.point_ttl {
	font-size:5vw;
	margin: 0 0 5%;
}

h3.point_ttl span {
	font-size:4vw;
	display:block;
}


p.point_img img {
	width:100%;
}

.point_txt_area {
	background-color:#fff;
	min-height: inherit;
	padding: 4%;
	box-sizing:border-box;
	text-align:left;
	color:#333;
}

p.point_txt {
	font-size:3.6vw;
	line-height:1.8em;
}

p.point_txt + p {
	margin: 20px 0 0;
}


ul.point_list02 {
	width: 96%;
	margin:0 auto;
	overflow:hidden;
	text-align:center;
}

ul.point_list02 li {
	float:none;
	width: 100%;
	min-height: inherit;
	margin: 0 0 5% 0;
	background-color:#f24579;
	text-align:center;
	color:#fff;
	padding: 10px 10px;
	box-sizing: border-box;
}

ul.point_list02 li:last-child{
	float:right;
	margin: 0;
}

ul.point_list02 li .point_txt_area {
	background-color:#fff;
	min-height:160px;
	padding: 20px;
	box-sizing:border-box;
	text-align:left;
	color:#333;
}

/*--txt_area--*/

.txt_area {
	clear:both;
	overflow:hidden;
	padding: 10% 4%;
	box-sizing: border-box;
	text-align:center;
	background-color: #f24579;
	color:#fff;
}

h2.txt_ttl span {
	display: inline !important;
}

h2.txt_ttl {
	font-size: 6.8vw;
	margin: 0 0 5%;
	line-height: 1.8em;
}

h2.txt_ttl span {
	background: linear-gradient(transparent 70%, #59d1ba 70%);
}

p.txt_001 {
	font-size: 4vw;
	line-height: 1.8em;
	margin: 0 0 5%;
	text-align: left;
}

dl.txt_area_list {
	overflow: hidden;
	clear: both;
	border-bottom: 1px solid #fff;
	padding: 0 0 20px;
	margin: 0 0 20px;
}
dl.txt_area_list:last-of-type {
	margin: 0 ;
}
dl.txt_area_list dt {
	font-size: 5vw;.sitemap ul li .sitemap_list_child li a
	text-align: left;
	margin: 0 0 10px;
	line-height: 30px;
}

dl.txt_area_list dt span {
	background: #59d1ba;
	width: 30px;
	height: 30px;
	line-height: 30px;
	display: block;
	text-align: center;
	font-size: 20px;
	float: none;
	font-style:italic;
	font-family:Times New Roman,"ＭＳ Ｐゴシック";
	margin: 0 0 4% 0;
}

dl.txt_area_list dd {
	text-align: left;
	font-size: 3.6vw;
	line-height: 1.8em;
	clear: both;
}
	
.video_wrap{
	margin-top: 20px;
}
	
	/* --------------

    1日の流れ

    -------------- */
    .daycontents article{
        width: 46%;
        margin: 0 2% 20px;
        background: #f4f4f4; 
        padding-bottom: 20px;
    }

    .daycontents article div.day_left{
        float:none;
        width: 100%;
        padding: 10px 5px 5px;
    }

    .daycontents article div.day_left h3{
        color: #fff;
        font-size: 22px;
        font-weight: bold;
        margin-bottom: 15px;
        letter-spacing: 0.1em;
    }

    .daycontents article div.day_left p img{
        object-fit: cover;
        width: 100%;
        height: 100px;
    }

    .daycontents article div.day_right{
        float: none;
        width: 100%;
        box-sizing: border-box;
        padding: 20px 10px 0;
    }

    .daycontents article div.day_right h4{
        font-weight: bold;
        font-size: 16px;
        border-bottom: 2px solid #4CB2B1;
        padding-bottom: 10px;
        margin-bottom: 10px;
        letter-spacing: 0em;
    }

    .daycontents article div.day_right p{
        font-size: 14px;
        line-height: 1.5em;
    }

/* --------------

gymsingle -店舗詳細-

-------------- */

.gymsingle_inner {
	clear: both;
	overflow: hidden;
	text-align: center;
	background-color: #f1f1f1;
	padding: 8%;
}

.gymsingle_ttl {
	color: #bf3a8f;
	font-size: 5vw;
	font-weight: bold;
	line-height: 1.8em;
}

.gymsingle_cont {
	overflow: hidden;
}
.gymsingle_cont_sw {
	flex-direction: column;
}
.gymsingle_cont_sw .swiper {
	padding-right: 0;
}
p.gymsingle_img {
	float: none;
	width: 100%;
	margin: 0 0 3%;
}

p.gymsingle_img img {
	width: 100%;
}

.gymsingle_box {
	float: none;
	width: 100%;
}
.gymsingle_cont_sw .gymsingle_box {
	width: 100% !important
}
h4.gymsingle_box_ttl {
	background: #dfdfdf;
    padding: 10px 15px;
    margin-bottom: 20px;
    font-weight: bold;
}

.gymsingle_box .tel span {
    font-size: 20px;
    font-weight: bold;
}

.gymsingle_box .tel,
.gymsingle_box .access {
    margin: 0 0 20px 15px;
}

.gymsingle_box .access span {
    margin-top: 10px;
    display: inline-block;
}

.gymsingle_list {
	overflow: hidden;
}

.gymsingle_list ul li {
	display: inline-block;
	vertical-align: top;
	margin: 20px 5px 0 0;
}

.gymsingle_map {
	padding: 0 1%;
	box-sizing: border-box;
	margin: 0 0 50px;
}


.gymsingle_map iframe {
	width: 100%;
	height: 300px;
}


.gymsingle_map .map_btn a,
.gymsingle_review .map_btn a,
.gymdouble_review .map_btn a {
    background: #bf3a8f;
    padding: 15px 0 !important;
    color: #fff;
    display: block;
    width: 80% !important;
    margin: -40px auto 0;
    border-radius: 30px;
    text-decoration: none;
    position: relative;
    z-index: 10;
}

ul.single_trainer_list {
	overflow: hidden;
	text-align: center;
	margin: 0 0 80px;
}

ul.single_trainer_list li img {
	width: 100%;
}

h3.single_trainer_name {
	padding: 0 3%;
	margin: 0 0 4%;
}

ul.single_trainer_list li {
	width: 100%;
	display: inline-block;
	margin: 0;
	padding: 0%;
	box-sizing: border-box;
}

.staff_blog_area {
	background-color: #f1f1f1;
	padding: 80px 0;
	overflow: hidden;
}

.staff_blog_left {
	width: 100%;
	float: none;
	margin: 0 0 15%;
}

.staff_blog_right {
	width: 100%;
	float: none;
}

h4.staff_blog_ttl {
	font-size: 24px;
	font-weight: bold;
	color: #333;
	letter-spacing: 0.1em;
	text-align: center;
	margin: 0 0 40px;
}

h4.staff_blog_ttl span {
	display: block;
	font-size: 14px;
	font-weight: normal;
	padding: 10px 0 0;
}

ul.staff_blog_list {
	overflow: hidden;
	padding: 0%;
	box-sizing: border-box;
}

ul.staff_blog_list li {
	border-bottom: 1px  solid #ccc;
	padding: 0 0 20px;
	overflow: hidden;
}

ul.staff_blog_list li + li {
	margin: 20px 0 0;
}

ul.staff_blog_list p.blog_img01 {
	width: 30%;
	float: left;
}


ul.staff_blog_list p.blog_img01 img {
	width: 100%;
	height: 120px;
    overflow: hidden;
    object-fit: cover;
}

.staff_blog_main_info {
	width: 65%;
	float: right;
}

p.staff_blog_day {
	font-size: 3vw;
	margin: 0 0 5px;
	padding: 5px 0 0;
}

h3.staff_blog_ttl {
	font-size: 3.6vw;
	font-weight: bold;
	color: #333;
	margin: 0 0 5px;
	line-height: 1.6em;
}

p.staff_blog_txt {
	font-size: 3vw;
	line-height: 1.8em;
}
	
	
p.single_trainer_img {
	width: 100%;
	float: none;
	padding: 0 3%;
	box-sizing: border-box;
	margin: 0 auto 5%;
}

.single_trainer_staff {
	width: 100%;
	float: none;
	margin: 0 0 5%;
	padding: 0 3%;
	box-sizing: border-box;
}

h4.single_trainer_txt {
	font-size: 4.8vw;
	margin: 0 0 3%;
	text-align: left;
	line-height: 1.8em;
}

.single_trainer_staff ol {
	text-align: left;
	border-bottom: 1px solid #ccc;
	padding: 0 5% 4%;
	margin: 0 0;
	overflow: hidden;
	box-sizing: border-box;
}

.single_trainer_staff ol li {
	font-size: 4vw;
	display: inherit;
}

.single_trainer_staff ol li + li {
	margin: 3% 0 0;
}

p.single_trainer_01 {
	clear: both;
	font-size: 13px;
	text-align: left;
	line-height: 1.8em;
	padding: 0 3%;
}


.gymsingle_map_cont,
.gymsingle_map_cont01,
.gymsingle_map_cont02,
.gymsingle_map_cont03 {
	width: 100%;
	float: none;
}

.gymsingle_map_cont03 + div,
.gymsingle_map_cont01 + div,
.gymsingle_map_cont02 + div {
	margin: 10% 0 0;
}

.gymsingle_map_cont + div {
	margin: 5% 0 0;
}
.gymsingle_review {
	margin: 0 0 50px;
}
.gymsingle_review_cont,
.gymdouble_review_cont
{
	width: 100%;
	float: none;
}

.gymsingle_review_cont + div,
.gymdouble_review_cont + div
{
	margin: 10% 0 0;
}


ul.single_list {
	overflow: hidden;	
}

ul.single_list li {
	width: 100% !important;
	float: none;
	padding: 0 0 5%;
	margin: 0 0 5% !important;
	box-sizing: border-box;
}

.gym_btn a {
	background: #bf3a8f;
	padding: 15px 0;
	color: #fff;
    display: block;
    width: 90%;
    margin: 0 auto;
    border-radius: 30px;
	text-decoration: none;
}

/*----------company----------*/

dl.company_table {
	width: 100%;
	overflow: hidden;
	border-bottom: 1px solid #ccc;
	margin: 0 auto 5%;
	padding: 0 0 5%;
}

dl.company_table dt {
	width: 100%;
	float: none;
	font-size: 4vw;
	margin: 0 0 1%;
}

dl.company_table dd {
	width: 100%;
	float: none;
	font-size: 3.6vw;
}

dl.company_table dd p + p {
	margin: 5% 0 0;
}

dl.company_table dd p {
	line-height: 1.8em;
	border-bottom: 1px dashed #ccc;
}


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

ul.main_list01 {
	text-align:center;
	margin: 0 0 10%;
	background-color: #f24579;
	padding: 20px 0;
	font-size:0;
}

ul.main_list01 li {
	width: 40%;
	margin: 0 1% 2%;
	display:inline-block;
}


.txt_area {
	clear:both;
	overflow:hidden;
	padding: 10% 4%;
	box-sizing: border-box;
	text-align:center;
	background-color: #f24579;
	color:#fff;
}

h2.txt_ttl {
	font-size: 6.8vw;
	margin: 0 0 5%;
}

h2.txt_ttl span {
	background: linear-gradient(transparent 70%, #59d1ba 70%);
}

p.txt_001 {
	font-size: 4vw;
	line-height: 1.8em;
	margin: 0 0 5%;
	text-align: left;
}

dl.txt_area_list {
	overflow: hidden;
	clear: both;
	border-bottom: 1px solid #fff;
	padding: 0 0 20px;
	margin: 0 0 20px;
}

dl.txt_area_list dt {
	font-size: 4.2vw;
	text-align: left;
	margin: 0 0 10px;
	line-height: 30px;
}

dl.txt_area_list dt span {
	background: #59d1ba;
	width: 30px;
	height: 30px;
	line-height: 30px;
	display: block;
	text-align: center;
	font-size: 20px;
	float: none;
	font-style:italic;
	font-family:Times New Roman,"ＭＳ Ｐゴシック";
	margin: 0 0 4% 0;
}

dl.txt_area_list dd {
	text-align: left;
	font-size: 3.6vw;
	line-height: 1.8em;
	clear: both;
}


p.media_txt001 {
	font-size:5.6vw;
}

h2.media_area_ttl {
	font-size:6vw;
	line-height: 1.4em;
	font-weight:bold;
}

.price_area {
	clear:both;
	overflow:hidden;
	padding: 10% 5%;
	text-align:center;
}

h2.price_area_ttl {
	font-size:7vw;
	margin: 0 0 5%;
}

table.price_table {
	width: 960px;
	margin: 0 0 10%;
	
	display:none;
}

p.sp_tabel_price {
	text-align:center;
	margin: 0 0 3%;
}

table.price_table,
table.price_table td, 
table.price_table th {
	border: 1px solid #ccc;
	border-collapse: collapse;
}
table.price_table td, 
table.price_table th {
	padding: 10px;
	width: 30px;
	height: 25px;
}

table.price_table th {
	font-weight:bold;
	font-size:20px;
}

th.tti01 {
	width: 35% !important;
	background-color:#f24579;
	color:#fff;
}

th.tti02 {
	width: 20% !important;
	background-color:#666666;
	color:#fff;
}

td.area01 {
	background-color:#f7e4eb;
	font-size:24px;
}

td.area02 {
	background-color:#f4f4f4;
	font-size:20px;
}

span.del {
    color: #e6245e;
    text-decoration : line-through ;
}
td.area01 span.txt01 {
	font-size:16px;
	color:#333;
}

span.txt02 {
	display:block;
	font-size:16px;
	padding: 0 20px;
	color:#333;
}

p.price_txt {
	font-size:3.6vw;
	text-align: center;
}

#sp_tabel {
    box-sizing: border-box;
    border-right: 1px solid #4f4d47;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
}
#sp_tabel table { border-right: none;}

	
	
.point_area {
	clear:both;
	overflow:hidden;
	padding: 10% 4%;
	box-sizing:border-box;
	text-align:center;
}

ul.point_list {
	width: 96%;
	margin:0 auto 2%;
	overflow:hidden;
	text-align:center;
}

ul.point_list li {
	float:none;
	width: 100%;
	min-height: inherit;
	margin: 0 0 5% 0;
	background-color:#f24579;
	text-align:center;
	color:#fff;
	padding: 10px 10px;
	box-sizing: border-box;
}


ul.point_list li:last-child{
	float:none;
	margin: 0;
}

p.point_number {
	font-size:10vw;
	margin: 0 0 1%;
	padding: 5% 0 0;
}

p.point_number span {
	font-size:5vw;
	display:block;
}

h3.point_ttl {
	font-size:5vw;
	margin: 0 0 5%;
}

h3.point_ttl span {
	font-size:4vw;
	display:block;
}


p.point_img img {
	width:100%;
}

.point_txt_area {
	background-color:#fff;
	min-height: inherit;
	padding: 4%;
	box-sizing:border-box;
	text-align:left;
	color:#333;
}

p.point_txt {
	font-size:3.6vw;
	line-height:1.8em;
}

p.point_txt + p {
	margin: 20px 0 0;
}


ul.point_list02 {
	width: 96%;
	margin:0 auto;
	overflow:hidden;
	text-align:center;
}

ul.point_list02 li {
	float:none;
	width: 100%;
	min-height: inherit;
	margin: 0 0 5% 0;
	background-color:#f24579;
	text-align:center;
	color:#fff;
	padding: 10px 10px;
	box-sizing: border-box;
}

ul.point_list02 li:last-child{
	float:right;
	margin: 0;
}

ul.point_list02 li .point_txt_area {
	background-color:#fff;
	min-height:160px;
	padding: 20px;
	box-sizing:border-box;
	text-align:left;
	color:#333;
}	
	
.method_area {
	clear:both;
	overflow:hidden;
	padding: 10% 4%;
	box-sizing:border-box;
	background-size:cover;
	text-align:center;
}

p.method_txt {
	font-size:3.6vw;
	line-height:2.0em;
	margin: 0 0 10%;
	text-align:left;
}

p.method_txt br {
	display:none;
}

p.method_txt strong {
	color: #e6245e;
	font-weight:bold;
	font-size:4.4vw;
}

ol.method_number {
	overflow:hidden;
	background: none;
}

ol.method_number li {
	width: 50%;
	float: left;
    box-sizing: border-box;
    display: inherit;
    vertical-align: top;
	margin: 0;
}

ol.method_number li img {
    padding: 2%;
	box-sizing:border-box;
}


.profile_area {
	clear:both;
	overflow:hidden;
	padding: 10% 3%;
	background-size:100%;
	text-align:center;
}

.profile_main {
	width: 100%;
	float: none;
	margin: 0 0 5%;
}

p.profile_main_img {
	width: 100%;
	float: none;
}


.profile_cont {
	text-align:left;
}

.profile_cont + .profile_cont {
	margin: 10% 0 0;
}

p.profile_ttl01 {
	width: 100%;
	padding: 5px 0;
	font-size:4.8vw;
	border-radius:10px;
	text-align:center;
	color: #fff;
	background-color:#f24579;
	margin: 0 0 5%;
}

h3.profile_main_name {
	font-size:5.6vw;
	margin: 0 0 2%;
	text-align:center;
}

p.profile_main_txt {
	font-size:4vw;
	line-height:1.8em;
}

.profile_cont dl {
	overflow:hidden;
	clear:both;
	border-top: 1px solid #f1f1f1;
	padding: 3% 0;
}

.profile_cont dl:last-child{
	border-bottom: 1px solid #f1f1f1;
}

.profile_cont dl dt {
	width: 100%;
	float: none;
	text-align:left;
	font-size: 4.2vw;
	margin: 0 0 1%;
}

.profile_cont dl dd {
	width: 100%;
	float: none;
	font-size: 4vw;
	line-height:1.8em;
}

.profile_comment {
	font-size:3.6vw;
	line-height:2.0em;
	text-align:left;
	padding: 4%;
	box-sizing:border-box;
	clear:both;
	background:#fff;
}

p.txt001 {
	font-size:3.4vw;
	margin: 0 0 10%;
}

h2.ttl {
	text-align:center;
	font-size:5.2vw;
	color:#333333;
	margin: 0 0 30px;
}

.item_area {
	clear:both;
	overflow:hidden;
	padding: 10% 3%;
	background-color:#f24579;
	color:#fff;
	text-align:center;
}

p.txt001 {
	font-size:4vw;
	margin: 0 0 1%;
}

h2.trainer_area_ttl {
	font-size:6vw;
	margin: 5% 0 10%;
}

ul.item_info {
	overflow: hidden;
	margin: 0 0 40px;
}

ul.item_info li {
	display: inline-block;
	margin: 0 1%;
	border: 3px solid #fff;
	width: 42%;
	padding: 5% 0;
	border-radius: 10px;
}

ul.item_info li h3 {
	font-size: 6vw;
}

ul.item_info li h3 span {
	display:block;
	font-size: 4vw;
}

p.item_txt {
	font-size:4vw;
	line-height: 2.0em;
	text-align:left;
}

ul.b_content_list li {
	width: 50%;
	float: left;
	padding: 1%;
	box-sizing: border-box;
	overflow: hidden;
}

ul.b_content_list li img {
    width: 100% !important;
    height: 140px !important;
    overflow: hidden;
    object-fit: cover;
}

.pc{display: none;}
.mobile {display:inherit !important;}
	
	
/* --------------

top_attention

-------------- */

.top_attention{
	margin: 10px auto;
}

.top_attention p{
	font-size: 3.2vw;
	line-height: 1.5;
}
	
.top_attention-noborder{
	margin: 0 auto;
}
.top_attention-noborder p{
	font-size: 3.8vw;

}


/*--trainer-area--*/
.trainer-area {
	overflow: hidden;
}

.trainer-area-left {
	width: 100%;
	float: none;
	padding-left: 0px;
	box-sizing: border-box;
	margin: 0 0 10%;
}

.trainer-area-right {
	width: 100%;
	float: none;
}

.trainer-area-right p.history_img {
	max-width: 370px;
}

/*SEO*/
#stores {
    list-style: none;
    overflow: hidden;
    margin-bottom:none;
}

#stores li {
	width: 50%;    
	text-align: center;
   line-height:3.5;
	float: left;
}
	
.author-box{
    width:98%;
    height:200px;
    display:block;
    border:solid 1px #d0d0d0;
}

.author-heading{
    display:block;
    height:40px;
    width:100%;
    background-color:#52acc1;
    color:#fff;
    font-size:16px;
    line-height:40px;
}

.author-inner {
    width:98%;
    height:160px;
	margin:0 auto;
}

.author-left{
    float:left;
	width:24%;
	height:160px;
	text-align:center;
	margin-left:0px;
}

.author-right{
    float:left;
    width:74%;
    height:160px;
}

.author-photo{
	width:72px!important;
	height:72px!important;
	overflow:hidden;
	position:relative;
	border:solid 2px #bdbdbd;
	border-radius:50%;
	margin:30px 0px 55px 5px!important;
}

.writer-name {
    height:40px;
    padding-left:10px;
    line-height:40px;
    font-weight:bold;
    font-size:13.5px;
}

.author-prof{
    height:80px;
    padding:0px 10px;
    font-size:12px;
    line-height:1.3;
}

.author-clear{
    clear:both;
}

.youtube-video {
	width: 100% !important;
	background-color: #fff !important;
}


.youtube-video iframe {
	width: 100%;
	height: 240px;
}

ul.yokohama-list li {
	width: 100%;
	float: none;
	padding: 0 0 3%;
	margin: 0 0% 6%;
	box-sizing: border-box;
	border-bottom: solid 1px #ccc;
}

ul.yokohama-list li h3 {
	font-size: 16px;
	margin: 0 0 10px;
	color: #dd3e7f;
}

ul.yokohama-list li p {
	font-size: 14px;
	line-height: 1.8;
}

.course_l div.price_list ul li {font-size: 13px;}
.course_l div.price_list ul li.price span {
	padding: 15px 0 0;
	display: block;
	font-size: 16px;
}



.bunkatu {
	font-size: 1.2rem;
  }
  

	
}