/********************************************************************************
 page-sp.css
********************************************************************************/

@media screen and (max-width: 767px) {
/*============================================================
 トップページ
*============================================================*/
/* common
---------------------------------------- */
	.topSec {
		margin-bottom: 40px;
	}
	.secTitle {
		margin-bottom: 32px;
	}
	.secTitle .en {
		font-size: 2.4rem;
	}
	.secTitle .jp {
		font-size: 1.8rem;
	}
	.secTitle .jp span {
		font-size: 2.8rem;
	}
	.secLead {
		margin-bottom: 48px;
	}
	
	.cta__text {
		width: 260px;
		font-size: 1.6rem;
	}
	.cta__link {
		width: 300px;
	}
	.cta__link p {
		font-size: 3.2rem;
		padding: 6px 0;
	}
	.cta__link p img {
		width: 30px;
	}
	.cta__link span {
		font-size: 1.4rem;
	}
	
/* mv
---------------------------------------- */
	.mv {
		margin-top: 88px;
		margin-bottom: 40px;
	}
	.mvContent__img {
		top: 40px;
	}
	.mvContent__lead {
		font-size: 1.8rem;
	}
	.mvContent__catch {
		font-size: 2.4rem;
	}
	
/* news
---------------------------------------- */
	.topNews__title {
		margin-bottom: 16px;
	}
	.topNews .post {
		display: block;
		padding: 24px 0;
	}
	.topNews .post__meta {
		margin-right: 0;
		margin-bottom: 16px;
	}
	.topNews .post__title {
		width: 100%;
	}
	
/* outline
---------------------------------------- */
	.outlineContentList {
		max-width: 480px;
		margin: 0 auto;
	}
	.outlineContentItem {
		display: block;
	}
	.outlineContentItem:before {
		width: 172px;
		height: 2px;
		top: 50%;
	}
	.outlineContentItem .wrap {
		width: 100%;
	}
	.outlineContentItem .wrap:last-of-type {
		margin-top: 80px;
	}
	.outlineContentItem .wrap > div {
		text-align: center;
	}
	
/* feature
---------------------------------------- */
	.featureItem__no {
		font-size: 2.4rem;
	}
	.featureItem__text {
		margin-bottom: 16px;
	}	
	
/* flow
---------------------------------------- */
	.flow__lead {
		margin-bottom: 24px;
	}
	.flowItem__inner {
		display: block;
	}
	.flowItem__inner:before {
		top: 80px;
		left: 53px;
		height: 170%;
	}
	.flowItem__icon {
		position: absolute;
		margin-right: 0;
		left: 34px;
		top: 80px;
		width: 40px;
		height: 40px;
		padding: 6px;
	}
	.flowItem__title {
		width: 100%;
		margin: 0 0 16px;
	}
	.flowItem__text {
		width: 100%;
		padding-left: 70px;
	}
	
/* partner
---------------------------------------- */
	.topPartner__inner {
		filter: none;
		height: auto;
		margin-bottom: 80px;
	}
	.topPartner__link {
		padding-top: 32px;
		padding: 32px 24px;
	}
	.topPartner__title {
		font-size: 3rem;
		margin-bottom: 12px;
	}
	.topPartner__title span {
		font-size: 2.6rem;
	}
	.topPartner__ex p:first-child:before, .topPartner__ex p:first-child:after {
		width: 45%;
	}
	
/*============================================================
 下層ページ
*============================================================*/
/* common
---------------------------------------- */
	.pageHeader {
		margin-bottom: 40px;
	}
	.pageHeader__inner h1 {
		font-size: 2.4rem;
	}
	
/* news一覧
---------------------------------------- */
	.p_news_list .posts {
		justify-content: center;
	}
	.p_news_list .posts .post {
		width: 100%;
		max-width: 400px;
		margin: 0 auto 40px;
	}
	
/* case一覧
---------------------------------------- */
	.p_case_list .pageContent__inner {
		margin-bottom: 80px;
	}
	.p_case_list .block {
		display: block;
		max-width: 400px;
		margin: 0 auto 48px;
	}
	.p_case_list .block__img {
		width: 100%;
		margin-right: 0;
		margin-bottom: 16px;
	}
	.p_case_list .block__img img {
		width: 100%;
	}
	.p_case_list .block__content {
		width: 100%;
	}
	
/* パートナー
---------------------------------------- */
	.p_partner .lead__title {
		font-size: 2rem;
	}
	.p_partner .partnership__title {
		margin-bottom: 32px;
	}
	.p_partner .partnership .item {
		display: block;
		max-width: 400px;
		margin: 0 auto 48px;
	}
	.p_partner .partnership .item__img {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.p_partner .partnership .item__content {
		width: 100%;
	}
	.p_partner .partnership .item__content h3 {
		margin-bottom: 8px;
	}
	.p_partner .partnerEx .item {
		width: 100%;
		max-width: 400px;
		margin: 0 auto 40px;
	}
	
/* お問い合わせ
---------------------------------------- */
	.p_contact .lead {
		margin-bottom: 40px;
	}
	.p_contact .lead__text {
		font-size: 2rem;
		margin-bottom: 24px;
	}
	.p_contact .lead__text .forPC {
		display: block;
	}
	.p_contact .lead__tel {
		font-size: 2.8rem;
	}
	.p_contact .lead__tel span {
		font-size: 1.8rem;
	}
	.p_contact .step p {
		margin: 0 20px;
	}
	.p_contact .step p:not(:first-child):before {
		left: -24px;
	}
	.p_contact .note {
		margin-bottom: 40px;
	}
	.p_contact .thanksContent__lead {
		font-size: 2.4rem;
	}

	
}

@media screen and (max-width: 480px) {
/*============================================================
 トップページ
*============================================================*/
/* common
---------------------------------------- */
	.secTitle .jp {
		font-size: 1.6rem;
	}
	.secTitle .jp span {
		font-size: 2rem;
	}
	.home .cta {
		margin-bottom: 40px;
	}
	
/* mv
---------------------------------------- */
	.mvContent__logo {
		max-width: 320px;
		width: 100%;
		margin-bottom: 108px;
	}
	.mvContent__lead {
		font-size: 1.6rem;
		margin-bottom: 32px
	}
	.mvContent__lead:before {
		width: 48px;
		height: 2px;
	}
	.mvContent__img {
		width: 100%;
		max-width: 320px;
		top: 48px;
	}
	.mvContent__catch {
		margin-bottom: 24px;
	}
	.mvContent__btn {
		width: 248px;
	}
	
/* outline
---------------------------------------- */
	.outline {
		margin-bottom: 20px;
	}
	.outlineContentItem h4 {
		width: 260px;
		font-size: 1.8rem;
	}
	.outlineContentItem {
		padding: 40px 0;
	}
	.listening__inner {
		padding: 0 16px;
	}
	.listening__catch {
		font-size: 1.6rem;
	}
	.listening__catch span {
		font-size: 2rem;
	}
	.listening__title {
		font-size: 2rem;
	}
	.improvement__title {
		font-size: 2rem;
	}
	.improvementBefore {
		margin-bottom: 90px;
	}
	.improvementBefore:before {
		bottom: -20px;
		height: 910px;
	}
	.improvementBefore:after {
		bottom: -90px;
	}
	.improvementBefore .item__title {
		display: none;
	}
	
/* feature
---------------------------------------- */
	.featureItem {
		padding: 48px 16px 24px;
	}
	.featureItem:not(:last-child) {
		margin-bottom: 80px;
	}
	.featureItem:nth-child(2) {
		margin-bottom: 32px;
	}
	.feature__lead {
		margin-bottom: 56px;
	}
	.featureItem__no {
		top: -26px;
	}
	.featureItem__catch {
		font-size: 1.8rem;
		margin-bottom: 24px;
	}
	.featureItem__img img {
		max-width: 260px;
	}
	.featureDownload {
		margin-bottom: 80px;
	}
	.featureDownload a {
		font-size: 1.2rem;
		padding: 0;
		height: 48px;
		line-height: 46px;
	}
	.featureDownload a:before {
		right: 5px;
	}

/* flow
---------------------------------------- */
	.flow__lead {
		padding: 0 16px;
	}
	.flowItem__inner:before {
		left: 34px;
	}
	.flowItem__icon {
		left: 16px;
	}
	.flowItem__text {
		padding-left: 52px;
	}
	
/* price
---------------------------------------- */
	.price__lead {
		margin-bottom: 20px;
	}
	
/* case
---------------------------------------- */
	.topCase {
		margin-bottom: 0;
	}
	
	.topPartner__ex {
		padding: 24px;
	}
	.topPartner__ex p:first-child {
		margin-top: -40px;
		margin-bottom: 16px;
	}
	
	.p_contact .lead__text .forPC {
		display: none;
	}
	
}
