body, html {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	position: relative;
	overflow-x: hidden;
}
a:hover {
	text-decoration: none;
	opacity: 0.8;
}
.header-contents {
	margin-top: 26px !important;
}
.header-right {
	text-align: right;
}
.header-left a {
	color: #000;
}
.container {
	margin: 0 auto;
}
.header-logo {
	display: flex;
}
.header-logo img {
	width: 60px;
	height: 60px;
}
.navbar-nav {

}
.nav-item {
	padding-left: 2em;
	padding-right: 2em;
}
.blue-border {
	background-color: #fff;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #87cefa), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #87cefa),color-stop(.75, #E7F8FC), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 14px 14px;
	height: 10px;
}
.white-border {
	background-color: #87cefa;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #fff), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #fff),color-stop(.75, #E7F8FC), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 14px 14px;
	height: 8px;
	margin-top: -10px;
	margin-bottom: 10px;
	margin-left: 10px;
	margin-right: 10px;
}
.main-header {
	background: url("../images/sorea-bg.jpg");
	background-size: cover;
	margin: 30px auto;
	padding-top: 60px;
	padding-bottom: 60px;
	position: relative;
}
.main-title, .sub-title {
	display: block;
	margin-left: 0;
}
.sub-title {
	font-size: 13px;
	margin-top: 3px;
}
.title2 {
	font-size: 26px;
	font-weight: 700;
	margin-top: 20px;
	letter-spacing: 5px;
}
.navbar {
	background: #fff;
	text-align center;
}
h1.logo-title {
	font-size: 60px;
	font-weight: 700;
	letter-spacing: 1px;
	margin-top: 50px;
	margin-bottom: 50px;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}
h1.logo-title img {
	width: 100px;
	height: 100px;
	margin-top: -20px;
}
.lead {
    font-size: 2.5rem;
    font-weight: 700;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}
.lead2 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-top: -16px;
	text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
}

.lead3 {
	margin: 50px auto;
	max-width: 62%;
	background: #87cefa;
	border-radius: 100px;
	padding: 16px 0;
	position: relative;
	font-weight: 700;
}
.lead3 .big-text {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 2.2px;

}
.lead3 .assessment-link {
	width: 420px;
    margin: 10px auto;
	background: #FFA500;
	padding: 4px 80px;
	font-size: 20px;
	font-weight: 700;
}
.lead3 .assessment-link a {
	color: #fff;
}
.all-free {
	position: absolute;
    top: 10%;
    left: 0;
	margin-left: -30px;
}
.ec-link {
	position: absolute;
	bottom: 0;
	right: 0;
	margin-right: 20px;
	margin-bottom: 10px;
	background: orange;
	padding: 8px 10px;
}
.ec-link a {
	color: #fff;
}
.home-content1 {
	max-width: 1110px;
	border: 2px solid #06CCF9;
	padding: 20px 50px;
}
.service-info, .purchase-info, .service-reason, .customers-voice, .performance-title {
	margin: 20px auto 10px;
	width: 100%;
	background-color: #dcdcdc;
	padding: 8px;
	text-align: center;
	font-size: 26px;
	font-weight: 700;
}
.service-step {
	display: flex;
}
.service-step p {
	font-size: 22px;
    padding-top: 10px;
}
.step1, .step2, .step3 {
	width: 100%;
	background: #87cefa;
	color: #fff;
	text-align: center;
}
.step1, .step2 {
	margin-right: 10px;
}
.only-3step {
	width: 450px;
	font-size: 30px;
	font-weight: 700;
	text-align: center;
	border-bottom: 3px solid #006AB6;
	margin: 0 auto;
	margin-top: 40px;
	margin-bottom: 60px;
}
p.contents {
	background: #fff;
	color: #000;
	font-size: 18px;
	margin-left: 10px;
	margin-bottom: 10px;
	margin-right: 10px;
	padding: 10px;
	text-align: left;
}
.purchase {
	width: 100%;
	margin: 0 auto;
	display: flex;
}
.purchase-img, .purchase-title {
	width: 50%;
}
.purchase-title {
	background: #87cefa;
	color: #fff;
	font-size: 26px;
	font-weight: 700;
	padding-left: 30px;
	vertical-align: middle;
}
.service-reason {
	margin-top: 70px;
}
.reason {
	display: flex;
	flex-wrap: wrap;
}
.reason-box1, .reason-box2 {
	background: #87cefa;
	width: 49%;
	padding: 10px 20px;
	margin-bottom: 20px;
}
.reason-box1 {
	margin-right: 2%;
}
.reason h2 {
	color: #fff;
	text-align: center;
	padding-bottom: 10px;
}
.reason p {
	text-align: center;
}
.customers-voice {
	margin-top: 50px;
}
.voice-wrapper {
	background: #87cefa;
	padding: 20px;
}
.voice-inner {
	display: flex;
	width: 100%;
	min-height: 200px;
	background: #fff;
	padding: 20px;
}
.customer-img {
	width: auto;
	height: 180px;
	margin: 0 auto;
	padding-top: 30px;
}
.customer {
	width: 760px;
	background: #dcdcdc;
	padding: 10px 20px;
	position: relative;
}
.customer-name {
	position: absolute;
	bottom: 0;
	right: 0;
	margin-right: 1em;
	margin-bottom: .5em;
}
.inner-belt {
	height: 16px;
	background: #87cefa;
}
.performance-title {
	margin-top: 50px;
}
.performance {
	display: flex;
	padding: 10px;
	color: #000;
}
.jisseki {
	background: #dcdcdc;
	font-size: 16px;
    padding: 8px 16px 0;
}
.price {
	display: inline-block;
	text-align: right;
	margin-left: auto;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 3px;
}
.inner-belt-white {
	height: 10px;
	background: #fff;
}

.home-content2 {
    max-width: 1110px;
    border: 1px solid #06CCF9;
    padding: 20px 50px;
	margin: 0 auto;
	margin-top: 70px;
	margin-bottom: 50px;
}
.inquiry-wrapper {
	background: #87cefa;
	padding: 20px 0 4px;
	text-align: center;
}
.inquiry-btn {
	display: inline-block;
	width: 40%;
	margin: 10px auto 20px;
	background: #fff;
	padding: 4px 20px;
}
.inquiry-btn a {
	color: #000;
}
.time span {
	color: #fff;
	background: #dcdcdc;
	padding: 0 6px;
	margin-right: 10px;
}
.phone {
	margin-top: 20px;
	margin-bottom: 0;
	font-size: 20px;
}
.phone-no {
	margin-top: -20px;
}
.phone-no a {
	font-size: 30px;
	font-weight: 700;
}
.comapny {
	display: inline-block;
	width: 100%;
	text-align: center;
	margin: 70px auto 10px;
	font-size: 40px;
	font-weight: 700;
}
.comapny img {
	width: 60px;
	margin-top: -10px;
	margin-right: 10px;
}
.copyright {
	margin-bottom: 180px;
}
.how-to {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
}
div#footerFloating {
    display: block;
    width: 100%;
	margin: 0 auto;
    position: fixed;
    left: 0px;
	bottom: 0px;
    z-index: 9999;
    text-align: center;
    padding: 0 auto;
}

div#footerFloating img {
    max-width: 100%;
}

.flow-wrap {
	background: #87cefa;
	padding: 20px 20px 60px;
	margin-bottom: 70px;
}
.flow-step h2 {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	margin: 40px 0;
	text-align: center;
}
.flow-step .step {
	display: flex;
	background: #fff;
	padding: 10px;
}
.flow-body {
	display: block;
	padding: 0 16px;
}
.step-title {
	font-size: 26px;
	font-weight: 700;
	margin-bottom: -1px;
}
.step-title span {
	color: #000099;
	padding-right: 1em;
	letter-spacing: 2px;
}
.flow-contents {
	margin-top: 6px;
}
p.contents.point {
	height: 10em;
}
.triangle {
    width: 0;
    height: 0;
	margin: 16px auto;
    border-style: solid;
    border-width: 50px 35px 0 35px;
    border-color: #ffffff transparent transparent transparent;
}
.address-wrap {
	background: #87cefa;
    padding: 20px 20px 60px;
    margin-bottom: 70px;
}
.address-wrap h2 {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	margin: 40px 0;
	text-align: center;
}
.address-inner {
	background: #fff;
	padding: 20px 20px 40px;
}
p.address {
	background: #eee;
	border-radius: 20px;
	text-align: center;
	padding: 20px 0;
}
.download-btn {
	width: 100%;
	margin: 0 auto;
	background: #87cefa;
	text-align: center;
	padding: 10px 0;
	margin-top: 36px;
}
.download-btn a {
	color: #000;
}
.faq-section {
    background: #fff;
	margin-bottom: 30px;
}
.faq-body {
    padding: 0;
}
.faq-section .question {
	background: #dcdcdc;
	font-size: 20px;
	padding: 0 10px 0 20px;
	vertical-align: middle;
}
.faq-section .question span.qno {
	display: inline-block;
	width: 50px;
	font-size: 40px;
	font-weight: 700;
	color: #fff;
	margin-right: 20px;
	text-shadow: #87cefa 1px 1px 0;
	vertical-align: middle;
}
.faq-section .question span.q-cont {
	display: inline;
	vertical-align: middle;
}

.faq-section .answer {
	font-size: 18px;
	line-height: 2.5em;
	padding: 10px 10px 10px 90px;
}
.company-section {
	display: flex;
    background: #fff;
	margin-bottom: 30px;
}
.ceo-wrap {
    background: #87cefa;
    padding: 20px 20px;
    margin-bottom: 70px;
}
.ceo-comment {
	padding: 20px 0 20px 20px;
	line-height: 2.2em;
}
.table {
    margin-bottom: 0;
}
.table th{
	background-color: #DCDCDF;
	color: #000;
	text-align: center;
}
.table th {
	vertical-align: middle;
}
.table-bordered th, .table-bordered td {
    border: 1px solid #bbb;
}
.form-wrap {
	margin-top: 80px;
	padding: 0 50px;
}
.form-control-label {
	text-align: left;
	font-weight: 700;
}
.form-control-label span.must-item {
	color: #fff;
	background: orange;
	padding: 2px 6px;
	margin-left: 20px;
}
select {
    font-size: 14px;
}
.note {
	margin: 0 auto;
	width: 90%;
	margin-top: 50px;
	margin-bottom: 10px;
	background: #F4F4F4;
	border-radius: 30px;
	padding: 10px 30px;
}
.note-title {
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	margin-top: 10px;
	margin-bottom: 10px;
}
.note p {
	text-align: left;
	font-size: 15px;
}
.btn-warning {
    background-color: orange;
    border-color: orange;
    width: 400px;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
}

@media screen and (max-width: 768px) {
	.nav-item {
    	padding-left: 1em;
    	padding-right: 1em;
	}
	.lead3 {
    	max-width: 95%;
	}
	.home-content1 {
		padding: 10px;
	}
	.service-step {
    	display: block;
	}
	.service-step img {
    	float: left;
		padding-left: 10px;
    	padding-right: 10px;
	}
	p.contents {
    	padding-bottom: 0;
    	border-bottom: 10px solid #06CCF9;
	}
	p.contents:before, .performance:before {
    	content: "";
    	display: table;
	}
	p.contents:after, .performance:after {
    	content: "";
    	display: table;
		clear: both;
	}
	.step1, .step2, .step3 {
    	margin-bottom: 20px;
	}
	.performance {
		display: block;
		padding-top: 100px;
	}
	.purchase-title {
    	font-size: 22px;
		padding-top: 20px;
    	padding-left: 20px;
	}
	.reason p {
    	text-align: left;
	}
	.u-pad {
		display: none;
	}
	.inner-belt-white {
		display: none;
	}
	.jisseki {
    	margin-right: -10px;
	}
	p.contents.point {
    	height: 12em;
	}
	.faq-section .answer {
    	line-height: 2em;
	}
	.table th {
    	width: 35%;
	}
	.form-wrap {
    	padding: 20px 0;
	}
	.facebook-page {
		margin: 0 auto;
		margin-top: 20px;
		text-align: center;
	}
	.copyright {
    	margin-bottom: 120px;
	}
	div#footerFloating img {
    	width: 100%;
	}
}

@media screen and (max-width: 500px) {
	.sub-title {
    	font-size: 10px;
	}
	.header-left {
		text-align: center;
	}
	.header-right {
		text-align: left;
	}
	.navbar-toggler {
    	margin-top: -120px;
	}
	.blue-border {
		margin-top: -30px;
	}
	h1.logo-title {
		font-size: 30px;
		margin-top: 0;
	}
	h1.logo-title img {
    	width: 50px;
    	height: auto;
		margin-top: 0;
	}
	.lead {
    	font-size: 1.3rem;
	}
	.lead2 {
    	font-size: 1rem;
    	margin-top: 0;
	}
	.lead3 {
		border-radius: 6px;
	}
	.lead3 .big-text {
    	font-size: 18px;
    	font-weight: 700;
    	letter-spacing: 2.2px;
		padding-top: 16px;
	}
	.lead3 .assessment-link {
    	width: 100%;
    	padding: 4px 0;
    	font-size: 20px;
	}
	.service-step img {
		width: 100%;
	}
	.all-free {
		display: none;
	}
	.free {
		width: 150px;
    	font-size: 20px;
    	letter-spacing: 2px;
    	color: #000;
    	background: #fff;
    	padding: 10px;
    	margin: 0 auto;
    	border-radius: 30px;
	}
	.purchase {
		display: block;
		padding: 0;
	}
	.purchase-img {
		width: 100%;
	}
	.purchase-img img {
		max-width: 100%;
	}
	.purchase-title {
		width: 100%;
		padding-bottom: 20px;
	}
	.reason-box1, .reason-box2 {
    	width: 100%;
	}
	.reason-box1 {
    	margin-right: 0;
	}
	.voice-inner {
		display: block;
	}
	.customer {
		width: 100%;
	}
	.customer-img {
		height: 150px;
		text-align: center;
		padding-top: 10px;
	}
	.customer-name {
		position: relative;
		text-align: right;
		padding-top: 16px;
	}
	.jisseki {
		font-size: 20px;
		margin-right: 0;
	}
	.service-info, .purchase-info, .service-reason, .customers-voice, .performance-title {
		font-size: 20px;
	}
	.home-content2 {
		padding: 10px;
	}
	.only-3step {
    	width: auto;
    	font-size: 20px;
	}
	.ec-link {
		margin-right: 10px;
	}
	.copyright {
		margin-bottom: 80px;
	}
	.comapny {
		font-size: 30px;
	}
	.inquiry-btn {
		width: 80%;
	}
	.comapny img {
		width: 50px;
	}
	.how-to {
		font-size: 14px;
	}
	.pc-only {
		display: none;
	}
	.home-content1, .home-content2 {
		border: none;
	}
	.home-content1 {
		margin-top: 0 !important;
	}
	.flow-step .step {
		display: block;
		padding: 8px;
	}
	.flow-step .step img {
		width: 100%;
		margin-bottom: 10px;
	}
	.flow-body .blue-border {
		margin-top: 0;
	}
	.step-title {
		font-size: 20px;
	}
	p.contents.point {
    	height: 100%;
	}
	.faq-section .question {
		padding: 10px;
	}
	.faq-section .question span.qno {
		font-size: 30px;
		margin-right: 10px;
	}
	.faq-section .answer {
		padding: 10px;
	}
	.company-section {
		display: block;
	}
	.ceo-comment {
    	padding: 20px;
    	line-height: 1.8em;
	}
	.ceo-img {
		text-align: center;
	}
	.form-wrap {
		margin-top: 30px;
	}
	.form-control-label {
    	margin-bottom: 10px;
	}
	select {
    	border: thin solid #ccc;
    	padding: 8px;
	}
	.note {
		width: 100%;
	}
	.btn-warning {
		width: 200px;
	}
}


@media screen and (min-width: 769px) and (max-width: 1200px) {
    .lead3 {
        max-width: 80%;
	}
}

@media screen and (min-width: 501px) {
	.sp-only, .free {
		display: none;
	}
}
@media screen and (min-width: 800px) {
	.o-pad {
		display: none;
	}
	.company-info {
		margin-top: 100px;
	}
	.footer-company {
		margin-top: 30px;
	}

	div#footerFloating img:first-of-type {
		margin-right: 10px;
	}
	div#footerFloating img:last-of-type {
		margin-left: 10px;
	}
}

*, *:before, *:after {
	box-sizing: border-box;
}
.col_2{
	width: 100%;
	margin-bottom: 30px;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
	width: 48%;
	padding: 10px;
	margin: 0 1%;
	background: #eee;
}
.col_2 > div img{
	margin: 0 auto 10px;
}
.col_2 > div p{
	color: #000;
	text-align: center;
}
.col_2 > div:hover , .col_2 > div a p:hover {
    -webkit-transition: all 0.8s ease 0s;
    -moz-transition: all 0.8s ease 0s;
    -ms-transition: all 0.8s ease 0s;
    -o-transition: all 0.8s ease 0s;
    transition: all 0.8s ease 0s;
}
.col_2 > div:hover {
    background: #ddd;
}
.col_2 > div a p:hover {
    color: #C00614;
}
@media screen and (max-width: 800px) {
	.col_2 > div{
		width: 100%;
		margin: 1% 0;
	}
}
