/*-------------------------------------------
全体
-------------------------------------------*/

body {
	font-size: 5vw;
	line-height: 7vw;
	word-break: break-all;
	text-size-adjust: none;
}

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

.pc-left {
	float: none;
	margin: 0 auto;
}

.pc-right {
	float: none;
	margin: 0 auto;
}

.pc-of {
	overflow: visible;
}

.pc-center {
	text-align: left;
}

a:hover img {
	opacity: 1;
}

a.bo {
	text-decoration: underline;
}

a.bo:hover {
	text-decoration: underline;
}

a.no-bo {
	text-decoration: underline;
}

a.no-bo:hover {
	text-decoration: underline;
}

.mobi-full {
	width: 100%;
}

.list {
    margin-bottom: 5%;
}

.list li {
	margin-left: 5vw !important;
}

.num-list {
	margin-bottom: 5%;
}

.num-list li {
	margin-left: 9vw !important;
}

.douga {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
	margin: 0 auto;
}

.douga iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.pc {
	display: none;
}

.mobi {
	display: block;
}

.m20 {
	margin: 2.5% !important;
}

.mt20 {
	margin-top: 2.5% !important;
}

.mb20 {
	margin-bottom: 2.5% !important;
}

.no-mt20 {
	margin-top: -5% !important;
}

.mb-20 {
	margin-bottom: 5% !important;
}

.ml20 {
	margin-left: 2.5% !important;
}

.mr20 {
	margin-right: 2.5% !important;
}

.m40 {
	margin: 5% !important;
}

.mt40 {
	margin-top: 5% !important;
}

.mb40 {
	margin-bottom: 5% !important;
}

.ml40 {
	margin-left: 5% !important;
}

.mr40 {
	margin-right: 5% !important;
}

.m60 {
	margin: 10% !important;
}

.mt60 {
	margin-top: 10% !important;
}

.mb60 {
	margin-bottom: 10% !important;
}

.ml60 {
	margin-left: 10% !important;
}

.mr60 {
	margin-right: 10% !important;
}

.p20 {
	padding: 2.5% !important;
}

.pt20 {
	padding-top: 2.5% !important;
}

.pb20 {
	padding-bottom: 2.5% !important;
}

.pl20 {
	padding-left: 2.5% !important;
}

.pr20 {
	padding-right: 2.5% !important;
}

.p40 {
	padding: 5% !important;
}

.pt40 {
	padding-top: 5% !important;
}

.pb40 {
	padding-bottom: 5% !important;
}

.pl40 {
	padding-left: 5% !important;
}

.pr40 {
	padding-right: 5% !important;
}

.p60 {
	padding: 10% !important;
}

.pt60 {
	padding-top: 10% !important;
}

.pb60 {
	padding-bottom: 10% !important;
}

.pl60 {
	padding-left: 10% !important;
}

.pr60 {
	padding-right: 10% !important;
}

/*-------------------------------------------
文字スタイル
-------------------------------------------*/

.fs15 {
	font-size: 3.5vw !important;
	line-height: 5.5vw !important;
}

.fs23 {
	font-size: 6.5vw !important;
	line-height: 8.5vw !important;
}

.fs30 {
	font-size: 8vw !important;
	line-height: 10vw !important;
}

.fs40 {
	font-size: 9.5vw !important;
	line-height: 11.5vw !important;
}

.fs50 {
	font-size: 11vw !important;
	line-height: 13vw !important;
}

/*-------------------------------------------
header
-------------------------------------------*/

header {
	padding: 0;
}

header .wrapper {
	box-sizing: border-box;
	padding-top: 20%;
	width: 95%;
}

.site-info {
	width: 100%;
}

.site-info-text {
	font-size: 3.75vw;
    line-height: 4.75vw;
	text-align: center;
}

.site-logo {
    font-size: 5.5vw;
    line-height: 7.5vw;
    text-align: center;
}

.logo-img {
	background: url(images/logo.png) no-repeat;
	background-size: contain;
	height: 0;
	padding-bottom: 16.129%;
	width: 80%;
}

.head-menu-sp {
	background: #FFF79A;
	box-sizing: border-box;
	padding-bottom: 5px;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
}

.head-menu-sp-in {
	box-sizing: border-box;
	border-bottom: 5px solid #fff;
}

.head-menu-sp li {
	box-sizing: border-box;
	border-right: 1px dotted #2d0304;
	float: left;
	width: 25%;
}

.head-menu-sp li:last-child {
	border-right: 0;
}

.head-menu-sp li a {
	box-sizing: border-box;
	color: #2d0304;
	display: block;
	font-size: 5vw;
	line-height: 7vw;
	padding: 15% 0;
	text-decoration: none;
	text-align: center;
}

.head-menu-sp li:last-child a {
	background: #EB5F22;
	color: #fff;
	font-weight: bold;
}

/*-------------------------------------------
TOP画像
-------------------------------------------*/

.top-img {
	background: url(images-sp/top-img.jpg) no-repeat;
	background-size: 100%;
	height: 0;
	margin: 2.5% auto 0;
	padding-bottom: 102.18%;
	width: 100%;
}

/*-------------------------------------------
共通コンテンツ
-------------------------------------------*/

.content {
	margin-top: 10%;
}

.content h2 {
	background: #f5fbe4;
	box-sizing: border-box;
	border-bottom: 5px solid #dbf1a1;
	font-weight: bold;
	font-size: 6.5vw;
	line-height: 8.5vw;
	padding: 2.5%;
	position: relative;
	text-align: center;
}

.content h2::after {
	bottom: -8px;
	box-sizing: border-box;
	border-bottom: 3px dotted #2d0304;
	content: "";
	left: 0;
	position: absolute;
	width: 100%;
}

.content-in {
	margin: 4% auto 0;
	width: 95%;
}

/*-------------------------------------------
こんな方におススメです
-------------------------------------------*/

.check li {
	margin-bottom: 5%;
	padding-left: 12.5%;
}

.check li::before {
	background: url(images/checkbox.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 0;
	margin-top: 0.5%;
	padding-bottom: 8%;
	top: 0;
	width: 10%;
}

.check li strong {
	font-size: 6.5vw;
	line-height: 8.5vw;
}

.osusume-img {
	background: url(images-sp/osusume-img.jpg) no-repeat;
	background-size: 100%;
	box-sizing: border-box;
	height: 0;
	margin: 5% auto 0;
    overflow: hidden;
	padding-bottom: 38.633%;
    text-indent: 100%;
    white-space: nowrap;
	width: 95%;
}

/*-------------------------------------------
オンライン・ランニングクリニックだからできること
-------------------------------------------*/

.dekiru-list li {
	margin-bottom: 5%;
	padding-left: 9vw;
}

.dekiru-list li::before {
    font-size: 6.5vw;
    line-height: 8.5vw;
    top: 0;
}

.dekiru-list li strong {
    font-size: 6.5vw;
    line-height: 8.5vw;
}

.dekiru-img {
	background: url(images-sp/dekiru-img.png) no-repeat;
	background-size: 100%;
	height: 0;
	margin: 10% auto 0;
	padding-bottom: 134.09%;
	width: 95%;
}

/*-------------------------------------------
医療的知識を持ったランニング専門のスタッフがアドバイス
-------------------------------------------*/

.staff-list {
    display: block;
    margin-bottom: 5%;
}

.staff-list li {
	float: none;
	margin-right: 0;
	width: 100%;
}

.staff-in {
	width: 100%;
}

.staff-img {
	height: 0;
	margin: 0 auto 2.5%;
	padding-bottom: 45.666%;
	width: 100%;
}

.staff-img.sakurai-img {
	background: url(images-sp/staff-sakurai-img.jpg) no-repeat;
	background-size: 100%;
}

.staff-name {
	font-size: 5vw;
	line-height: 7vw;
	margin-bottom: 2.5%;
	padding: 1.5% 2.5%;
}

.staff-info dt {
	padding: 1.5% 2.5%;
}

.staff-info dd {
	font-size: 5vw;
	line-height: 7vw;
	height: auto;
	padding: 1.5% 2.5%;
}

.staff-dd-1 {
	height: auto;
}

.staff-dd-2 {
	height: auto;
}

.staff-dd p {
	margin-bottom: 5%;
}

.staff-info-sp-list li {
	float: left;
	margin-right: 2.5%;
	width: 48.75%;
}

.staff-info-sp-list li:nth-child(2n) {
	margin-right: 0;
}

.staff-info-sp-img {
	box-sizing: border-box;
	height: 0;
	margin: 0 auto;
	overflow: hidden;
	padding-bottom: 92.881%;
	text-indent: 100%;
	white-space: nowrap;
	width: 100%;
}

.houki-img-sp {
	background: url(images-sp/staff-houki-img.jpg) no-repeat;
	background-size: 100%;
}

.fujita-img-sp {
	background: url(images-sp/staff-fujita-img.jpg) no-repeat;
	background-size: 100%;
}

.fujita-dd {
	height: 36.2vw !important;
}

/*-------------------------------------------
メディア実績
-------------------------------------------*/

.con-box {
	width: 100%;
}

#media .con-box.pc-left {
	margin-bottom: 5%;
}

.media-title {
    font-size: 6.5vw;
    line-height: 8.5vw;
    margin-bottom: 2.5%;
    padding: 1.5% 2.5%;
}

.media-title.book-ttl {
    padding-left: 15%;
}

.media-title.book-ttl::before {
	background: url(images-sp/title-book-icon.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 0;
	left: 2.5%;
	margin-top: 2%;
	padding-bottom: 8.135%;
	top: 0;
	width: 10%;
}

.media-title.tv-ttl {
    padding-left: 15%;
}

.media-title.tv-ttl::before {
	background: url(images-sp/title-tv-icon.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 0;
	margin-top: 2%;
	left: 2.5%;
	padding-bottom: 8.245%;
	top: 0;
	width: 10%;
}

.book-in {
	box-sizing: border-box;
	font-size: 5vw;
	line-height: 7vw;
	margin: 0 2.5%;
}

.book-in p {
	margin-bottom: 5%;
}

.book-img-1 {
	background: url(images/book-img-1.jpg) no-repeat;
	background-size: 100%;
	height: auto;
	margin: 0 auto 2.5%;
	padding-bottom: 125.72%;
    width: 100%;
}

.book-img-2 {
	background: url(images/book-img-2.jpg) no-repeat;
	background-size: 100%;
	height: auto;
	margin: 0 auto 2.5%;
	padding-bottom: 125.72%;
    width: 100%;
}

/*-------------------------------------------
運営
-------------------------------------------*/

#unei .logo-img {
	height: 0;
	margin-bottom: 2.5%;
	padding-bottom: 13.853%;
	width: 100%;
}

.table-tb {
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-top: 0;
	margin-bottom: 5%;
	width: 100%;
}

.table-tb li {
	background: #f3f3f3;
	box-sizing: border-box;
	overflow: hidden;
}

.table-tb-1 {
	float: none;
	padding: 1.5% 2.5%;
	width: 100%;
}

.table-tb-2 {
	border-left: 0;
	margin-left: 0;
	padding: 1.5% 2.5%;
}

.unei-title {
    font-size: 6.5vw;
    line-height: 8.5vw;
    margin-bottom: 2.5%;
    min-height: 17vw;
    padding: 4.5% 2.5% 1.5%;
    padding-left: 15%;
}

.unei-title::before {
	background: url(images-sp/title-book-icon-2.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 0;
	left: 2.5%;
	margin-top: 2%;
	padding-bottom: 13.783%;
	top: 0;
	width: 10%;
}

.unei-in {
	font-size: 5vw;
	line-height: 7vw;
	margin: 0 2.5%;
}

.book-img-3 {
	background: url(images/book-img-3.png) no-repeat;
	background-size: 100%;
	height: 0;
	margin: 0 auto 2.5%;
	padding-bottom: 98.092%;
    width: 70%;
}

.book-info {
	font-size: 5vw;
	line-height: 7vw;
	text-align: center;
	width: 100%;
}

.book-info p {
	margin-bottom: 5%;
}

/*-------------------------------------------
選べる４つのメニュープラン
-------------------------------------------*/

.plan-sec {
	margin-bottom: 10%;
}

.plan-title th {
	font-size: 5vw;
	line-height: 7vw;
	vertical-align: middle;
	padding: 0;
	width: 32%;
}

.plan-big {
	display: block;
	font-size: 6.5vw;
	line-height: 7.5vw;
	margin-left: 0;
}

.plan-title td {
	font-size: 5vw;
	line-height: 7vw;
	padding: 1.5% 2.5% 2.5%;
	text-align: center;
}

.plan-title-box {
	display: block;
	margin-left: 0;
	margin-top: 2.5%;
	padding: 1.5% 2.5%;
}

.plan-sec-in {
	margin: 2.5% 2.5% 0;
}

.plan-text {
	font-size: 5vw;
	line-height: 7vw;
}

.plan-osusume {
	margin: 2.5% 0 5%;
}

.plan-osusume th {
	padding: 25% 0;
    width: 25%;
}

.plan-osusume-img {
	background: url(images-sp/osusume-icon.png) no-repeat;
	background-size: 100%;
	left: 0;
	height: 0;
	margin: 0 auto;
	padding-bottom: 172.79%;
    right: 0;
    width: 50%;
}

.plan-osusume td {
	vertical-align: middle;
	padding: 1.5% 2.5%;
}

.plan-sec-text-img {
	box-sizing: border-box;
	height: 0;
	margin: 0 0 2.5% 0;
	padding-bottom: 66.497%;
    width: 100%;
}

.plan-img-1 {
	background: url(images-sp/plan-img-1.jpg) no-repeat;
	background-size: 100%;
}

.plan-img-2 {
	background: url(images-sp/plan-img-2.jpg) no-repeat;
	background-size: 100%;
}

.plan-img-3 {
	background: url(images-sp/plan-img-3.jpg) no-repeat;
	background-size: 100%;
}

.plan-img-4 {
	background: url(images-sp/plan-img-4.jpg) no-repeat;
	background-size: 100%;
}

.plan-sec-text p {
	margin-bottom: 5%;
}

.plan-text-list li {
	margin-bottom: 5%;
	padding-left: 7vw;
}

.plan-text-list li::before {
    font-size: 4vw;
    line-height: 7.5vw;
    left: 0;
    width: 6vw;
}

.plan-text-list li::after {
    height: 6vw;
    margin-top: 1%;
    top: 0;
    width: 6vw;
}

.plan-title-2 {
	width: 100%;
}

.plan-title-2 th {
	font-size: 5vw;
	line-height: 7vw;
	vertical-align: middle;
    padding: 5% 0;
	width: 20%;
}

.plan-title-2 td {
	font-size: 5vw;
	line-height: 7vw;
	vertical-align: middle;
	padding: 1.5% 2.5%;
	text-align: center;
}

.price-tb {
	font-size: 4vw;
    line-height: 6vw;
	width: 100%;
}

.first-price-tb {
	margin-bottom: 2.5%;
}

.price-tb th {
	padding: 1.5% 2.5%;
}

.price-tb-1 {
	width: 20%;
}

.price-tb-3 {
	width: 30%;
}

.price-tb td {
	padding: 1.5% 2.5%;
}

/*-------------------------------------------
お申し込みからレッスンまでの流れ
-------------------------------------------*/

.flow-list {
	width: 100%;
}

.flow-list li {
	margin-bottom: 14.5%;
	min-height: 0;
	padding-left: 0 !important;
}

.flow-list li.line-1 {
	line-height: 7vw;
}

.flow-list li.line-2 {
	line-height: 7vw;
	padding: 0;
}

.flow-list li.line-3 {
	line-height: 7vw;
	padding: 0;
}

.flow-list li::after {
	background: url(images-sp/flow-icon.png) no-repeat !important;
	background-size: 100% !important;
    bottom: 0;
    content: "";
    left: 0;
    height: 0;
    margin: -12% auto;
    padding-bottom: 9.411% !important;
    position: absolute;
    right: 0;
    width: 10%;
}

.flow-list li:nth-child(5)::after {
	content: none !important;
}

.flow-num {
	background: url(images-sp/flow-bg.png) no-repeat;
	background-size: 100%;
	line-height: 14vw;
	left: 0;
	height: 0;
	margin-bottom: 2.5%;
    padding: 0;
    padding-bottom: 13.843%;
	position: relative;
	text-align: center;
	top: 0;
	width: 100%;
}

.flow-num span {
	display: inline-block;
	font-size: 6.5vw;
	line-height: 8.5vw;
	margin-left: 5%;
}

/*-------------------------------------------
お問い合わせ・お申込みフォーム
-------------------------------------------*/

.contact-tb-1 {
	background: #fefded;
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-top: 1px solid #ccc;
	float: none;
	padding: 1.5% 2.5%;
	width: 100%;
}

.contact-tb li.youbou .contact-tb-1 {
	line-height: 7vw;
	height: auto;
	padding: 1.5% 2.5%;
}

.contact-tb-2 {
	box-sizing: border-box;
	margin-left: 0;
	padding: 2.5% 0 5%;
}

.contact-tb li:last-child .contact-tb-2 {
	padding-bottom: 0;
}

.contact-tb-2 input[type="text"],
.contact-tb-2 input[type="email"] {
	border: 1px solid #ccc;
	border-top: 1px solid #ccc;
	font-size: 5vw;
	line-height: 7vw;
	padding: 1.5% 2.5%;
}

.contact-tb li:first-child .contact-tb-2 input[type="text"] {
	border-top: 1px solid #ccc;
}

.contact-tb-2 textarea {
	border: 1px solid #ccc;
	border-top: 1px solid #ccc;
	font-size: 5vw;
	line-height: 7vw;
	height: 70vw;
	padding: 1.5% 2.5%;
}

.soushin-btn {
	background: url(images-sp/contact-btn-bg.png) no-repeat;
	background-size: 100%;
	border: 0;
	cursor: pointer;
	color: #fff;
	display: block;
	font-size: 7vw;
    line-height: 21.5vw;
	height: 0;
	margin: 5% auto 0;
	padding-bottom: 23.873%;
	width: 100%;
}

.soushin-btn:hover {
	opacity: 1;
}

.soushin-btn span {
    padding-right: 8vw;
}

.soushin-btn span::after {
    font-size: 10vw;
    line-height: 10vw;
    right: -3vw;
}

/*-------------------------------------------
footer
-------------------------------------------*/

footer {
	margin-top: 10%;
}

.foot-in {
	padding: 10% 0;
}

.foot-in .wrapper {
	width: 95%;
}

.foot-in .logo-img {
	background: url(images/logo-2.png) no-repeat;
	background-size: contain;
	height: 0;
	padding-bottom: 11.627%;
	width: 80%;
}

.foot-menu {
	margin-bottom: 10%;
	width: 100%;
}

.foot-menu li {
	margin: 0 2.5% 2.5% 0;
	width: 48.75%;
}

.foot-menu li a {
	padding: 10% 0;
}

.foot-menu li a:hover {
	opacity: 1;
}

.foot-menu li a span {
	padding-right: 7vw;
}

.foot-menu li a span::after {
	font-size: 8vw;
	line-height: 8vw;
    right: -2.5vw;
}

.foot-in .contact-btn {
	margin-top: 5%;
}

.copyright {
    font-size: 3.75vw;
    line-height: 4.75vw;
	padding: 10% 0;
}

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

.pagetop {
	bottom: 0;
	height: 50px;
	margin: 0 2.5% 2.5% 0;
	right: 0;
	width: 50px;
}

.pagetop::before {
	font-size: 50px;
	line-height: 50px;
}

.pagetop:hover {
	opacity: 1;
}

/*-------------------------------------------
特定商取引に関する法律に基づく表示
-------------------------------------------*/

#tokutei .content-in {
    width: 95% !important;
}
#tokutei .pb10{
	padding-bottom: 10% !important;	
}
#tokutei .pb15{
	padding-bottom: 15% !important;	
}
/*#tokutei .pb20{
	padding-bottom: 20% !important;		
}*/
.f-book{
    font-size: 18px;
    margin-left: 1%;
}


/*-------------------------------------------
フォーム
-------------------------------------------*/

.contact-tb-2 .label {
    border: 1px solid #ccc;
    border-top: 1px solid #ccc;
    font-size: 4.9vw;
    line-height: 7vw;
    padding: 1.5% 2.5%;
}

.contact-tb li.plan .contact-tb-1 {
    line-height: 7vw;
    height: auto;
    padding: 1.5% 2.5%;
}

.kakaku{
	display: block;
    text-align: center;
    margin-bottom: -20px;
}

.kakaku-2{
	display: block;
    text-align: center;
	margin-top: -25px;
    margin-bottom: initial;
}
