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

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 5vw;
	line-height: 7vw;
	word-break: break-all;
	text-size-adjust: none;
}

@media (min-width: 568px) {

	body {
		font-size: 4vw;
		line-height: 6vw;
	}

}

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

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;
}

.pc {
	display: none;
}

.mobi {
	display: block;
}

.m20 {
	margin: 2.5% !important;
}

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

.mb20 {
	margin-bottom: 2.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;
}

.mt100 {
	margin-top: 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;
}

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

.head-obi {
	font-size: 5vw;
	line-height: 6vw;
	padding: 2.5% 0;
	text-align: center;
}

/*----------------------------------
共有
----------------------------------*/

.y-bg {
	padding: 10% 0;
}

.w-bg {
	padding: 10% 0;
}

.g-bg {
	padding: 10% 0;
}

.con-title {
	margin-bottom: 5%;
}

.con-title-1 {
	margin-bottom: 0;
}

.con-title-1 strong {
	font-size: 7vw;
	line-height: 9vw;
}

.con-title-2 {
	font-size: 10vw;
	line-height: 12vw;
}

/*----------------------------------
バナー一覧
----------------------------------*/

.top-banner-img-list li {
	margin-bottom: 5vw;
}

/*----------------------------------
サポート実績
----------------------------------*/

.support-list li {
	box-sizing: border-box;
	float: none;
	font-size: 6vw;
	line-height: 8vw;
	height: 0;
	margin: 0 0 2.5% 0;
	padding: 0;
	padding-bottom: 35.71%;
	position: relative;
	width: 100%;
}

.support-list-in {
	left: 0;
	margin: 8% auto;
	position: absolute;
	right: 0;
}

.support-list li strong {
	font-size: 9vw;
	line-height: 11vw;
}

.support-list li.three-line {
	padding: 0;
	padding-bottom: 35.71%;
}

.support-list li.three-line .support-list-in {
	margin: 2.1% 0;
}

.support-list li:nth-child(4),
.support-list li:nth-child(8) {
	margin-right: 0;
}

.support-list li:nth-last-child(-n+4) {
	margin-bottom: 2.5%;
}

.support-list li:last-child {
	margin-bottom: 0;
}

.support-list li:nth-child(1) {
	background: url(images-sp/support-1-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(2) {
	background: url(images-sp/support-2-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(3) {
	background: url(images-sp/support-3-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(4) {
	background: url(images-sp/support-4-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(5) {
	background: url(images-sp/support-5-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(6) {
	background: url(images-sp/support-6-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(7) {
	background: url(images-sp/support-7-bg.png) no-repeat;
	background-size: contain;
}

.support-list li:nth-child(8) {
	background: url(images-sp/support-8-bg.png) no-repeat;
	background-size: contain;
}

/*----------------------------------
手厚いサポート
----------------------------------*/

.support-line {
	background: url(images-sp/obi.png) no-repeat;
	background-size: contain;
	box-sizing: border-box;
	font-size: 9vw;
	line-height: 11vw;
	height: 0;
	margin: -5% 0;
	padding-bottom: 57.14%;
	position: relative;
}

.support-line-in {
	left: 0;
	margin: 12% auto 8%;
	position: absolute;
	right: 0;
}

/*----------------------------------
こんなお悩みございませんか？
----------------------------------*/

.top-worries-content-in {
	padding: 1.7vw;
}

.top-worries-content-in-in {
	box-shadow: 0 0 1.5vw 0 rgba(0,0,0,0.6);
	min-height: 376px;
	padding: 2.5vw;
}

.top-worries-content-in-in-check-list li {
	font-size: 6vw;
	line-height: 8vw;
	margin-bottom: 2.5vw;
	padding-left: 9.5vw;
}

.top-worries-content-in-in-check-list li::before {
	border: 0.9vw solid;
	height: 7vw;
	top: 1vw;
	width: 7vw;
}

.top-worries-content-in-in-check-list-icon {
	left: 3vw;
	top: 2vw;
	width: 5.25vw;
}

.top-worries-content-in-in-check-list-icon::before {
	background: url(images/icon-check.png) no-repeat;
	padding-bottom: 86.328%;
}

.top-worries-content-in-in-img {
	right: 2.5vw;
	width: 30vw;
}

.top-worries-content-title {
	margin-top: 5vw;
}

.top-worries-content-title-in {
	padding: 0 11vw;
}

.top-worries-content-title-in::before,
.top-worries-content-title-in::after {
	width: 0.9vw;
}

.top-worries-content-title-in::before {
	left: 4vw;
}

.top-worries-content-title-in::after {
	right: 4vw;
}

.top-worries-content-title-in-main-in {
	font-size: 5.5vw;
	line-height: 7.5vw;
}

.top-worries-content-title-in-sub {
	margin-top: 2.5vw;
}

.top-worries-content-title-in-sub-in {
	border-bottom: 0.6vw solid;
	font-size: 5.5vw;
	line-height: 7.5vw;
	padding-bottom: 1.5vw;
}

.top-worries-content-title-in-sub-in::after {
	bottom: 0.6vw;
	height: 0.6vw;
}

/*----------------------------------
導入の流れ
----------------------------------*/

.flow-list {
	margin-bottom: 2.5%;
}

.flow-list li {
	box-sizing: border-box;
	float: none;
	height: 0;
	margin-right: 0;
	margin-bottom: 2.5%;
	padding-top: 0;
	padding-right: 0;
	position: relative;
	width: 100%;
}

.flow-list li:last-child {
	margin-right: 0;
	margin-bottom: 0;
	width: 100%;
}

.flow-list li:nth-child(1) {
	background: url(images-sp/flow-1.png) no-repeat;
	background-size: contain;
	padding-bottom: 50%;
}

.flow-list li:nth-child(2) {
	background: url(images-sp/flow-2.png) no-repeat;
	background-size: contain;
	padding-bottom: 50%;
}

.flow-list li:nth-child(3) {
	background: url(images-sp/flow-3.png) no-repeat;
	background-size: contain;
	padding-bottom: 50%;
}

.flow-list li:nth-child(4) {
	background: url(images-sp/flow-4.png) no-repeat;
	background-size: contain;
	padding-bottom: 50%;
}

.flow-list li:nth-child(5) {
	background: url(images-sp/flow-5.png) no-repeat;
	background-size: contain;
	padding-bottom: 42.85%;
}

.flow-text {
	font-size: 7vw;
	line-height: 9vw;
	left: 0;
	margin: 27.5% auto 0;
	position: absolute;
	right: 0;
}

.num {
	height: 0;
	line-height: 9vw;
	margin-right: 2.5%;
	padding-bottom: 10%;
	text-align: center;
	width: 10%;
}

.flow-text-2 {
	font-size: 5vw;
	line-height: 6vw;
}

/*----------------------------------
サポートの特徴
----------------------------------*/

.point-list {
	margin: 0 auto;
	width: 100%;
}

.point-list li {
	background: #fff;
	border: 2px solid #e2ca59;
	border-radius: 5px;
	box-sizing: border-box;
	margin-bottom: 2.5%;
	overflow: hidden;
}

.point-list li:last-child {
	margin-bottom: 0;
}

.point-1 {
	float: none;
	font-weight: bold;
	font-size: 11vw;
	line-height: 13vw;
	padding: 2.5%;
	text-align: center;
	width: 100%;
}

.point-2 {
	border-left: 0;
	border-top: 2px dashed #e2ca59;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 5vw;
	line-height: 7vw;
	margin-left: 0;
	padding: 2.5%;
}

.point-2-in {
	margin-top: 2.5vw;
}

.point-2-in-text {
	font-size: 4.5vw;
}

.point-2-in-text p {
	margin-bottom: 5vw;
}

.support-main-img {
	margin-bottom: 5vw;
	width: 75%;
}

/*----------------------------------
提供プラン
----------------------------------*/

.top-plan-content-con {
	margin-bottom: 0;
}

.top-plan-content-con section {
	float: none;
	margin: 0 0 2.5vw;
	width: 100%;
}

.top-plan-content-con section:last-child {
	margin-bottom: 0;
}

.top-plan-content-con-in {
	border-radius: 10px;
	padding: 5vw;
}

.top-plan-content-con-in-title-in-in {
	font-size: 5.5vw;
	line-height: 7.5vw;
	min-height: 10vw;
	padding: 0.75vw 0 0 12.5vw;
}

.top-plan-content-con-in-title-in-in::before {
	font-size: 5.5vw;
	line-height: 10vw;
	height: 10vw;
	width: 10vw;
}

.top-plan-content-con-in-text {
	font-size: 4.5vw;
	line-height: 6.5vw;
	margin-top: 2.5vw;
}

.top-plan-content-con-in-text p {
	margin-bottom: 5vw;
}

/*----------------------------------
お客様の声
----------------------------------*/

.voice {
	margin-bottom: 10%;
}

.voice .left {
	float: none;
}

.voice-img {
	height: auto;
	margin: 0 auto;
	width: 75%;
}

.voice-in {
	margin-left: 0;
	margin-top: 10.5%;
	padding: 2.5%;
	width: 100%;
}

.voice-in::before {
	background: url(images/yazirushi.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 0;
	left: 0;
	padding-bottom: 11.7%;
	margin: -9% auto 0;
	position: absolute;
	right: 0;
	transform: rotate(270deg);
	-webkit-transform: rotate(270deg);
	top: 0;
	width: 10%;
}

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

/*----------------------------------
ご相談フォーム
----------------------------------*/

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

.table li {
	margin-bottom: 5%;
}

.table-1 {
	float: none;
	margin-bottom: 2.5%;
	padding: 0;
	width: 100%;
}

.table-2 {
	margin-left: 0;
}

.table-2 input[type="text"],
.table-2 input[type="email"] {
	font-size: 5vw;
	line-height: 7vw;
	padding: 1% 2.5%;
}

.table-2 textarea {
	font-size: 5vw;
	line-height: 7vw;
	height: 200px;
	padding: 1% 2.5%;
}

.hissu {
	background: #ff0000;
	box-sizing: border-box;
	border-radius: 5px;
	color: #fff;
	display: inline-block;
	margin-left: 2.5%;
	padding: 0 2.5%;
}

.soushin {
	font-size: 5vw;
	line-height: 7vw;
	margin: 2.5% auto 0;
	padding: 5% 2.5%;
	width: 100%;
}

.soushin:hover {
	opacity: 1;
}

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

footer {
	padding: 5% 0;
}

/*----------------------------------
投稿・固定ページ
----------------------------------*/

.page-con {
	padding: 2.5%;
}

.page-con p {
	margin-bottom: 5%;
}